ANO 3- N 2 34 A 45 - REP. ARGENTINA
INEDITOS
Encienda
una computadora
Talents®
y sus perifericos.
MODEM
• Interfaz asincronica incorporada.
• Normas BELL y CCITT, 300 y
1.200 baudios.
• Incluye en 80 Kb software
de comunicaciones
MSX-PLAN
y MSX-WRITE.
RS-232
• Velocidades programables desde
50 a 19.200 baudios
• Procesamiento de
comunicaciones
desde Basic.
• Buffer de 128
caracteres
para
recepcion
UNIDAD DE DISCOS FLEXIBLES
• 5 1/4" de360 Kb (DS-DD)
• Velocidad transference
250 Kb/sg.
• Formato grabacion
compatible
MS-OOS.
TECLADO NUMERICO
» Conexion a Joystick
► Se integra a todo ef
software que corre
bajo MSX-DOS
(Ej.: D-Base II.
MSX-Plan. etc.)
MOUSE
• Codigo DPM-220,
accesorio para graficar.
MONITOR
MONOCROMATIC0 12”
• Anti-reflejo - Fosforo verde.
• Apto para uso profesional.
• (80 caracteres x 25 lineas).
• Parlante con amplificador
incorporado.
Software
EXPANSION 80 COLUMNAS
• Hace posible la utilizacibn de
software estandar CP/M.
emulando terminal tipo VT-52.
• Incluye software para
maneio de video.
MSX-LOGO
Desarrollado por Logo
Computer System Inc. con
aplicacion de primitivas y
redaccion del Manual por
los Ings. Hilario Fernandez
Long y Horacio Reggini.
MSX-LPC
Lenguaje de
programacion
estructurado y
en castellano.
MSX-PLAN
Planilla de calculo
de Microsoft Corp.
(Version para MSX
del Multiplan.)
MSX-WRITE ^
Procesador de
palabra de ASCII
Corp. en castellano.
MINI-LAN
EQUIPO ALUMNO
(RED PARA USO EDUCACIONAL)
• Comunicacion por linea compartida
a 30.000 baudios.
• Comparte unidades de disco
e impresoras de consola MSX maestro
con hasta 10 consolas MSX alumno
• Carga simultanea de un programa a
todos los alumnos.
• Carga individual de maestro a alumno
• Salvado de programa alumno a unidad
de disco maestro.
• Salida a impresora de maestro del
listado de programa alumno, en
spooling.
• Funciona desde MSX-Basic,
MSX-Logo o cualquier programa que
corra desde Basic.
• Estando activa. se dispone de todo el
MSX-Basic.
Talent _
Tecnologia y Talertfo
Producida en San Luis por Telematica S.A. licenciataria exclusiva de Microsoft Corp. y ASCII Corp. para uso de la norma MSX en Argentina.
6 meses de garantia y mensualmente en su quiosco la revista Load MSX.
• MSX, MSX-DOS, MSX-PLAN, MS-DOS, son marcas registradas de Microsoft Corporation MSX WRITE es marca registrada de ASCII Corporation.
• CP/M es marca registrada de Digital Research MSX-LOGO es marca registrada de Logo Computer Systems Inc. Telematica: 1986. Todos los derechos reservados.
Los datos y especificaciones que figuran en este aviso pueden ser modificados sin previo aviso.
LOAD
S (I M A R IQ ANO 3 - No.34
Director
Fernando Flores
Secretario de
Redaccion
Ariel Testori
Redaccion
Fernando Pedro
Arte y Diagramacion
Boccardo Diseno Grafico
Departamento de
Publicidad
Dolores Urien
Servicios Fotograficos
Oscar Burriel y Claudio
Veloso
EDITORIAL PROEDI
Presidente
Ernesto del Castillo
Vicepresidente
Cristian Pusso
Director Titular
Armengol Torres Sabate
Director Suplente
Javier Campos Malbran
Load Revista para usuarios de la
norma MSX es una publicacibn
mensual editada por Editorial
PROEDI S.A., ParanA 720, 5« Pi-
so, (101 7] Buenos Aires. Tel.: 46-
2886 y 49-7130. Reaistro Nacio-
nal de la Propiedaa Intelectual:
E.T.M. Registrada. Queda hecho
el depbsito que indica la Ley
11.723 de la Propiedad Intelec-
tual. Todos los derechos reserva-
dos. ISSN 0326-8241 . Impreso en
Impresicnes Gr&ficas Tabarb
S.A.I.C., Erbzcano 3158, Capital.
Fotocromo de tapa: Columbia.
Los ejemplares atrasados se ven-
der&n al precio del ultimo nurnero
en drculacibn. Prohibida la repro-
duced total o parcial de los mate-
riales publicados, por cuatauier
medio de reproduced grdfico,
auditivo o mecAnico, sin autoriza-
cibn expresa de los editores. Las
menciones se realizan con fines
informativos y tbcnicos, sin cargo
alguno para las empresas que co-
mercializan y/o los representan.
Al ser informativa su misibn, la re-
vista no se responsabiliza por
cualquier problems que pueda
plantear la fabricacibn, el funcio-
namiento y/o aplicacibn de los sis-
temas y los dispositivos descrip-
tos. La responsabilidad de los ar?
tlculos firmados corresponds ex-
clusivamente a sus autores. Dis-
tribuidor en Capital: Martino, Juan
de Garay 358, P.B., Capital. Distri-
butor en el interior: D.G.P., Hipb-
lito Yrigoyen 1450, Capital, Tel.:
38-9266/9800.
LOS ORIGENES
El Pascal es un lenguaje de
programacion que fue
creado para la enscnanza.
Sin embargo, sus multiples
dad de perifericos que exis-
te para su MSX. Mas aun,
desconocen las aplicacio-
nes que pueden tener,
como, por ejemplo, admi-
nistrar una bascula para
camiones de 60 toneladas.
(Pilg. 16)
bir en “italic”, pasando por
la decoracion de las caratu-
las de pantallas. (Pag.24)
PROGRAMAS
ventajas lo llevaron a si-
tuarse entre los favoritos de
los program adores. Para
ello fue decisivo el Turbo
Pascal, que aporto dos ti-
pos de mejoras: las pala-
bras clave y los procedi-
mientos incorporados.
(Pag.6)
RINCON DEL
USUARIO
No todos los usuarios co-
nocen realmente la varie-
Como si fuera
la galera de un
mago, nuestra
computadora
brinda la opor-
tunidad de sa-
carun trucotras
otro. Desde provocar y
anular sonidos hasta escri-
SACANDO
CONEJOS
DE LAS
MSX
- Explorador de cabezales.
(Pag.30)
SECCIONES FIJAS
Noticias MSX (Pag.4) -
Soft al dia (Pag.32) - Buzon
(Pag. 34)
O T I C I A S
M S X
Aplicacion
medica con MSX 2
Se trata del primer equipo de electro-
encefalograffa computarizada basado
en una “home computer” como es la
MSX2.
El mercado de la electromedicina se
caracterizo siempre, segun informa-
ron profesionales del medio, por tener
que recurrir a equipos importados o
bien nacionales con un alto costo de
adquisicion y mantenimiento, ade-
mas de ser basicamente equipos de un
solo proposito y dedicado.
Con el adveni-
miento de la
computacion
hogarefia se hi-
zo patente que
lamismapodn-
a prestar una
gran cantidad
de servicios en
esta rama, so-
bre todo para
profesionales
con inquietu-
des en el campo
de la electro-
medicina.
Con motivo de
lasXXXJoma-
das deNeuroci-
rugfa de la Pro-
vincia de Bue-
nos Aires , rea-
lizadas en Pinamar del 8 al 12 de di-
ciembre de 1988, Telematica S.A. -
Talent MSX. y EMAC S.R.L. presen-
taron el equipo mencionado. A dicho
congreso concurrieron neurociruja-
nos de todo el pais y del exterior.
La Interfase CAD-3 permite presen-
tar en pantalla las sefiales analogicas
enviadas por un electroencefalografo
EMAC EE-3, o bien de otra marca.
Posibilita almacenar en memoria 10
minutos de sesion, con 8 canales se-
parados.
A medida que se va almacenando la
information, se puede detener la cap-
tura de datos y obtener una amplifica-
cion en tiempo de la sefial almacena-
da, lo que permite ver con mas detalle
el electroencefalograma. Por pantalla
se visualizan 8 segundos simultanea-
mente con los 8 canales; ademas se
puede ampliar la sefial para visualizar
4, 2 y 1 segundos respectivamente.
El software incorpora las facilidades
de una pequefia base de datos (fiche-
ro) que permite guardar los datos del
paciente, los de la toma y diversos co-
mentarios que puedan servir como e-
valuacion del electroencefalograma.
Por otra parte, el software integra la
posibilidad de volcado por impresora
con capacidad de graficos (compati-
ble MSX o Epson) de toda la sesion o
de eventos seleccionables por el ope-
rador, en formato normal o ampliado.
Ademas, el operador tiene la posibili-
dad de copiar o descartar partes de la
toma, lo que pone al alcance del pro-
fesional la potencia de un procesador
de textos. Con la metodologia emple-
ada hasta el momento podria decirse
que este equipo brinda las facilidades
de un procesador de texto en un ambi-
to profesional habituado a trabajar
con una maquina de escribir.
Finalmente, se puede realizar un his-
tograma de todo el registro, asf como
un completo Analisis de Fourier del
mismo.
Durante las Jomadas de Pinamar, el
Doctor Peter Janetta, de Estados Uni-
dos, manifesto que ellos poseen un e-
quipamiento equivalente en su pais
basado en una Macintosh. Sin embar-
go, le parecio que este desarrollo fnte-
gramente nacional es una solucion in-
teligente para nuestro pais y America
Latina, donde la escasez de recursos
para el drea suele detener muchos pro-
yectos.
EMAC S.R.L. ofrece la interfase con
el software y el equipo completo, o se-
a computadora Talent MSX2 Turbo,
una unidad de disquete Talent DPF-
555, un monitor Talent y una impre-
sora que puede ser Epson o cualquie-
ra compatible, segun desee el profe-
sional.
Este equipamiento demuestra que la
norma MSX brinda al mercado un sis-
tema que por su modularidad facilita
el desarrollo de sistemas de software
y hardware para mercados verticales
de gran especializacion, y la Interfase
CAD-3 es una opcion mas que intere-
sante para el neurologo.
T5o rf A
1 W
LaoteSS
to
* 4c4 \c\ 0^ eS
b 1fyj»%-
c^ ' «**®
Sin duda Chance ya ha sido consagrado como el juego mas popuiai
entodoelpals.
Pero, detras de fodo gran exito hay una muy buena razon. Por eso detras
de Chance, usted siempre encontrara a El Cronista Comercial.
Un exito editorial que se escribe con la mas completa informacidn.
Desarrollaaa a traves de un lenguaje daro y abierto.
Y con la perspective economica necesaria para comprender mejor
la actualidad.
Hoy, quienes juegan con Chance, saben que la mejor informacion
no es juego.
El Cronista Comercial
Su chance de asociarse al exito.
TURBO PASCAL
LOS ORIGENES
El Pascal es un lenguaje de programacion que fue creado para la ensenanza. Sin embargo, sus
multiples ventajas lo llevaron a situarse entre los favoritos de los programadores. Para ello fue
decisivo el Turbo Pascal, que aporto dos tipos de mejoras: las palabras clave y los procedimientos
incorporados.
P
I ascalfueinventadoporNiklaus
Wirth en el comienzo de la decada del
’70. (Su nombrees en honor de Blaise
Pascal, un filosofo del siglo XVII). El
lenguaje de programacion Pascal se
penso inicialmente para la ensefianza
-ayudarfa a los programadores princi-
piantes a desarrollar buenos habitos al
permitirles escribir program as claros,
concisos y estructurados.
Antes del Pascal, lo que aprendfan los
estudiantes era FORTRAN, un len-
guaje previo y no estructurado.
El profesor Wirth creyo que muchos
errores comunes de programacion
podian evitarse si se utilizaba un len-
guaje estructurado en bloques que
♦ fuera estricto en el tipo de variables
utilizadas.
Pascal es un lenguaje de los que en
ingles se suelen denominar “strongly
typed”, algo as! como “fuertemente
tipificado”. Traducido a algo mas
comprensible, esto significa que las
variables y constantes de un tipo no
puede ser mezcladas libremente con
variables y constantes de cualquier
otro tipo. En otras palabras, a ambos
lados de una asignacion se deben
colocar variables y constantes del
mismo tipo. La unica excepcion acep-
tada es asignar a una variable real una
expresion de tipo entero. La verifica-
cidn querealizanloscompiladoresde
Pascal sobre el tipo de variables utili-
zadas en una expresidn permite evitar
errores de programacion al forzar al
programador para que emplee varia-
bles compatibles.
En Turbo Pascal, los nombres de
variables cohsisten en letras o subra-
yado (_) seguido por letras, digitos o
subrayados. La longitud maxima de
un nombre de variable permitido es de
127 caracteres pero no es muy practi-
co poner nombres tales como:
Esta_variable_tiene_por_mision_contar
pues si tenemos que contar, la senten-
cia serfa:
Esta_variable_tiene_por_mision_contar
:=Esta_variable_tienej)or_mision_contar
+ l;lo cual permite practicar mecano-
graffa pero entorpece la programa-
cion.
Todos los strings en Turbo Pascal se
encierran entre comillas simples (‘).
Esto difiere de lenguajes tales como el
C o el BASIC donde se utilizan las
comillas dobles (“).
Pascal utiliza cinco tipos de datos
escalares:
Palabra clave
char:Un caracter, longitud 1 byte
byte : Un entero, de un byte de
longitud cuyo valor va de 0 a 255.
integer : Un entero con un valor
de -32768 a 32767.
real.: Un numero decimal con 1 1
digitos de precision
Boolean: TRUE o FALSE (ver-
dad o falso).
Aunque a simple vista los tipos byte
y char parecen ser lo mismo, la verifi-
cation estricta de tipo que hace Pascal
impide utilizarlos indiscrim inada-
mente. Las variables byte se usan
como numeros enteros pequenos que
aceleran la ejecucion de un programa,
Pag. 6
mientras que las tipo char son simples
caracteres. Ademas de estos tipos de
variables, Pascal permite generar
arreglos de cada tipo escalar.
Aunque Pascal se desarrollo inicial-
mente para uso educativo, su facili-
dad de empleo y enfoque altamente
estructurado ganaron muchos adep-
tos que habfan programado en otros
lenguajes. A medida que Pascal
comenzo a ser utilizado para el desa-
rrollo de software comercial, se nece-
sito extender el lenguaje que, entre
otras cosas, no provefa de un buen
manejo de archivos. Antes del Turbo
Pascal, cada empresa de software que
desarrollaba un compilador creaba su
propio conjunto de extensiones, lo
que dificultaba la portabilidad (esto
es pasar un programa de una maquina
a otra, o de una version de un lenguaje
a otro). Sin embargo, debido a que
Turbo Pascal se convirtio en el estan-
dar “de facto”, muchas de las exten-
siones pueden ser utilizadas libre-
mente hoy en di'a.
Respecto a la portabilidad, aquf surge
una de las posibles aplicaciones, ya
que hay una version del Turbo Pascal
en MSX (la 3.01 del CP/M-80) y es
casi totalmente compatible con la
existente en IBM PC y compatibles
(previas a la 4 .0 de PC) . La transferen-
cia entre una PC y una MSX de un
programa escrito en Turbo Pascal es
directa: basta tener en cuenta la exten-
sidn de la pantalla (80 columnas o 40
columnas) y recompilar el programa
fuente (se puede cargar tranquila-
mente en cualquiera de las dos maqui-
nas), que el programa en cuestion
funciona sin problemas una vez reali-
zado el “transplante”. Otra de las
ventajas del MSXDOS y van...
PASCAL COMO
LENGUAJE
ESTRUCTURADO
El lenguaje Pascal es estructurado y
tiene ciertas similitudes con el Algol y
el C. La caracteristica distintiva de los
lenguajes estructurados es su capaci-
dad de armar bloques separados de
datos y codigo. Esto significa que
cada seccion puede trabajar “por las
suyas”, ocultando toda la informa-
ci6n del resto del programa para evi-
tar incomodos efectos secundarios al
efectuar una tarea especffica. Solo se
conocen los datos mfnimos entre cada
compartimiento y no se confunden
entre sf. Cuando trabajamos en BA-
SIC, mas de una vez nos encontramos
pensando si ya utilizamos esta varia-
ble o vemos como un ciclo termina de
forma algo extraha y descubrimos
que el fndice del FOR. .NEXT, por
ejemplo, quedd modificado en la
subrutina de la lineal 0000, llamada
dentro del ciclo.
Generalmente, la compartamentafi-
zacion se formaliza a traves de subru-
tinas, comunmente denominadas
“subprogramas’I, con “variables loca-
les”, que son temporarias. De esta
forma, es posible escribir subrutinas
que no causen efectos secundarios en
otras partes de un programa. El uso
excesivo de las variables globales
(variables “conocidas” a traves de
todo el programa) hard que los "bugs"
trepen por nuestros programas al per-
mitir la existencia de efectos secunda-
rios (de por sf, lo mas diffcil de loca-
lizar cuando “debugueamos”, o sea,
buscamos errores). En Pascal, todos
los subprogramas son funciones o
procedimientos (procedure) discre-
tos.
Las funciones y los procedimientos
son los bloques constructivos de Pas-
cal. Una tarea especffica dentro de un
programa puede ser definida y codifi-
cada en funciones o procedimientos.
Luego de “debuguear” la funcion o
procedimiento, un programador
podra confiar en la misma, ya que
trabajara adecuadamente y sin efec-
tos indeseables dentro del programa.
Todas las variables declaradas en una
funcion o procedimientos son reco-
nocidas y admitidas linicamente por
esa subrutina.
En Pascal, utilizar bloques de cddigo
crea lo que se llaman “estructuras de
programa”. Un “bloque de codigo” es
un conjunto de sentencias Pascal
conectadas logicamente que pueden
ser tratadas como una unidad. Se
crean colocando lfneas de codigo
entre las palabras clave “begin” y
“end”. Por ejemplo, en BASIC escri-
biriamos:
100 IF X<10 THEN PRINT “Error.
Intente de nuevo”:X=-l:GOSUB
10000 donde 10000 podria ser una
rutina que utiliza a X como bandera de
algun proceso.
En Pascal queda mucho mas visible la
estructura.
if x < 10 then begin
WriteLn(‘Error. Intente de nuevo’);
Anular(-l); . end;
En este caso, la misma funcion reali-
zada en BASIC se obtiene en Pascal
en forma mucho mas visible y, al
utilizar una funcion, es innecesario
tener disponible la variable X para la
tarea de “mensajero”, ya que se traba-
ja con una funcion de la misma mane-
ra que lo hacemos con las funciones
estandares en BASIC: SIN, SQR,
etcetera.
Vemos que el conjunto WriteLn..
Anular forma un bloque de programa
que se ejecuta cuando se cumple la
condicidn “x < 10” y puede ser pensa-
do como una unidad -un bloque de co-
digo. Una sentencia no puede ejecu-
tarse sin que se invoque la otra. En
Pascal, cualquier sentencia puede ser
unica o un bloque de sentencias. El
uso de los bloques de codigo genera
programas legibles, con logica facil
de seguir. Los bloques de codigo
tambidn permiten escribir programas
mejores, fibres de errores, porque el
significado de cada sentencia es claro.
Esto nos lleva a lo que se conoce
como programacion estructurada.
UN POCO DE
PROGRAMACION
ESTRUCTURADA
La forma en que la programacion
lineal o tradicional nos ensefia a resol-
ver problemas es tratar de obtener los
algoritmos de cada procedimiento a
medida que vamos “creando” el pro-
grama. Esto nos lleva a estancamos
quizds en una rutina que muestra un
mensaje de error y nos impide conti-
nuar con el programa, sin saber si al
finalizar el mismo y verlo funcionan-
do nos parecera mejor utilizar otro
tipo de algoritmo en una parte deter-
minada del programa. Los "yanquis"
denominan esta forma de programa-
cidn “down-top“ (de abajo hacia arri-
ba), o sea de lo particular a lo general.
El enfoque estructurado se conoce
tambien como “top-down” (de arriba
hacia abajo), es decir de lo general a
lo particular. Primero resolvemos el
problema general, dejando para mas
adelante (una vez resuelto lo general)
lo particular, los detalles. Este enfo-
que nos muestra cada procedimiento
o conjunto de procedimientos como
bloques estructurados, que se com-
portan como cajas negras que sabe-
mos que hacen tal o cual tarea, pero no
c6mo la hacen.
Otra de las “maxim as” de la progra-
macidn estructurada es la abolicion
del GOTO. Nosotros, los curtidos
programadores BASIC y Assembler,
no podemos imaginamos a veces qu6
seria la vida sin un GOTO Salvador,
pero... a veces los diagram as lineales
de un programa quedan como la
Avenida Libertador de nuestra Capi-
tal a las seis de la tarde: un nudo
descomunal.
£C6mo reemplazamos los GOTO?
Muy fdcil, con estructuras de control:
FOR. .NEXT, WHILE, REPEAT
UNTIL, etcetera.
Todo esto nos lleva nuevamente al
Pascal: si sumamos la posibilidad de
utilizar subprogramas“estancos” .es-
tructuras de control que permiten
obviar los GOTO y una forma de
encarar la programacidn del tipo es-
tructurado, nos encontraremos pro-
gram ando mucho mds eficientemen-
te, y, aunque no lo parezca, con mu-
cha mds rapidez.
Un programador Turbo Pascal puede
crear y mantener una biblioteca per-
sonal de funciones que se ajusten a su
personalidad. Ya que Turbo Pascal
permite incluir distintos archivos-
fuente dentro de un programa, los
proyectos grandes se pueden manejar
muy facilmente.
A medida que el Pascal se fue hacien-
do mds popular, muchos programa-
dores comenzaxon a utilizarlo en
cualquier tarea (de programacion, no
les servia mucho para afeitarse, por
ejemplo...). Ya que hay virtualmente
al menos un compilador Pascal por
cada computadora conocida (;inclu-
yendo la venerable TI99/4A!), se
puede tomar un programa escrito en
una maquina, compilarlo y correrlo
en otra con pocos cambios, o ninguno.
Esto ahorra mucho tiempo y dinero.
Veamos ahora que nos trae el Turbo
Pascal para los usuarios MSX.
MEJORAS
1NCORPORAPAS
AL TURBO PASCAL
En esta description sobre las mejoras
del Turbo Pascal, presuponemos que
el lector esta familiarizado con el
lenguaje y que conoce la version
estandar y sus limitaciones. Al que no
lo conozca, igualmente le resultaran
interesantes algunas consideraciones
que se aplican a las generales de la
programacidn.
La decision de mejorar un lenguaje
debe basarse en una buena razon.
Cada extensidn que se incorpore dis-
minuye “per se” la portabilidad de los
programas que la utilicen. Por otra
parte, las extensiones hacen al len-
guaje no estdndar. Usualmente las
extensiones se agregan porque la
versidn estandar del mismo carece de
alguna funcidn necesaria. En cuanto
al Pascal estandar, las carencias que
se observan son la falta de manejo de
strings, direccionamiento absoluto, y
manejo de overlays. Recordemos que
el Pascal se cred como lenguaje de
ensefianza y Borland, los creadores
del Turbo Pascal, lo convirtieron en
un lenguaje de propdsito general,
apto para el programador profesional .
Las mejoras introducidas por Borland
caen en dos categorias: sentencias del
lenguaje (palabras clave) y procedi-
mientos incorporados. Veamos pri-
mero las sentencias.
a) Absolute
La primera mejora sustancial que
encontramos en el Turbo Pascal es el
modificador “absolute”. El Pascal
estandar no permite fijar un lugar de
memoria determinado para una varia-
ble dada. Esta posibilidad era innece-
saria en el area de aprendizaje de la
programacion, sin embargo, cuando
se desarrollo software comercial o
profesional, fue esencial.
Por ejemplo, supongamos que quere-
mos modificar algun valor de la work-
area del MSX mas alia de la posicion
&HF380, digamos el que cuenta la
cantidad de lineas de la pantalla (ver
el truco que permite reservar unas
h'neas de la parte final de la misma).
En este caso, bastard con definir una
variable de la siguiente forma:
lineas: byte absolute $F3B 1
y luego, para poner 4 lineas reserva-
das, serd suficiente con hacer la si-
guiente asignacion:
lineas:=20;
Un ejemplo de aplicacion de lo ante-
rior es el siguiente programa:
program Lineas;
(*
Este programa usa la variable del
sistema
CRTCNT para reservar las ultimas
lineas
aprovechando el ‘absolute’
*)
var
CrtCnt: byte absolute $F3B1;
i: byte;
begin
ClrScr;
GotoXY(l,23);
Write(‘Linea 24
— ’);
GotoXY(l,21);
Write(‘Linea 22
— ’);
CrtCnt:=20;
GotoXY(l.l);
for i:=l to 100 do
WriteLn(‘i=’,i:3);
CrtCnt:=24;
end.
Notese como se indican las variables
en hexadecimal en Turbo Pascal.
Siempre hay que recordar que el uso
de variables absolutas debe hacerse
con sumo cuidado para evitar que el
sistema operativo y el programa cho-
quen y “cuelguen” la computadora.
Tambien se puede utilizar la senten-
cia absolute para hacer que dos varia-
bles compartan el mismo lugar de
memoria. El siguiente ejemplo hace
que las variables ‘suma’ y ‘sigue’
compartan la misma area:
suma : integer
sigue: integer absolute suma;
b) External
Con el Pascal estandar no es posible
utilizar funciones o procedimientos
que no esten escritos en Pascal. Sin
embargo, hay muchas ocasiones en
que es necesario que esto sea posible.
Por ejemplo, si tenemos que controlar
una interfase robotica que requiera
alta velocidad de ejecucion, lo mas
probable es que haya una rutina en
codigo maquina que permita manejar
el dispositivo.
En el Turbo Pascal para MSX, se
permite declarar una subrutina escrita
en codigo maquina a traves de su
direccion de memoria absoluta. Su-
pongamos que utilizamos la clasica
posicion SD000 para almacenar nues-
tra rutina en Assembler. En este caso,
la llamada a una supuesta rutina que
maneje un interruptor seria:
procedure Enciende(cual: integer);
external SD000
El modificador ‘external’ le informa
al Turbo Pascal que una rutina en
Assembler sera utilizada y en que
posicion de memoria reside.
Se debe declarar un subprograma
externo sin el cuerpo en nuestro pro-
grama Pascal; solo es necesario espe-
cificar los parametros del subprogra-
ma.
El problema que tiene external es que
antes deberemos ‘pokear’ el subpro-
grama en codigo maquina de alguna
forma y analizar en que posicion de
memoria lo colocamos para que no
interfiera con el sistema operativo.
La forma en que se le pasan los para-
metros a una rutina external en Turbo
Pascal esta mas alia de esta nota, pero
podri'amos mas adelante realizar
algun ejemplo de aplicacion. Para
poder utilizar esta facilidad se debe
conocer el lenguaje Assembler y la
arquitectura de las MSX.
c) Inline
El Turbo Pascal permite insertar codi-
go maquina directamente en nuestro
programa Pascal utilizando inline.
Esta facilidad puede ser muy util para
realizar interfases con dispositivos
especiales y escribir rutinas rapidas
que empleen las facilidades del Turbo
Pascal.
El codigo de maquina que se desea
insertar en el programa se incluye a
continuac ion de la palabra clave inli-
ne entre parentesis. Cada byte o pala-
bra se separa con la barra transversal
(/). Se pueden utilizar los signos mas
(+) y menos (-) para sumar o restar.
Un asterisco especifica una referen-
da al contador de posicion dentro del
programa Assembler. Como inline es
una sentencia, termina con punto y
coma (;). El siguiente ejemplo es una
rutina que pasa a mayusculas el string
que se le envia. Al lado de los codigos
se coloco como comentario el codigo
fuente.
program Pinline;
(*
Este programa utiliza la extension'inline’
del Turbo Pascal para crear un procedimiento
que pasa a mayusculas un string
*)
type
Str = string [255];
var
Alfa : Str;
procedure Mayusculas(var Strg: Str);
$A+
begin
inline ($2A/Strg/ { LD HL,(Strg) }
$46/
{
LD B,(HL)
}
$04/
{
INC B
}
$05/
{
LI: DEC B
}
$CA/*+20/
{
JPZ,L2
}
$23/
{
INCHL
}
$7E/
{
LD A,(HL)
}
$FE/$61/
{
CP ‘a’
}
$DA/*-9/
{
JP C,L1
}
$FE/$7B/
{
CP ‘z’+l
}
$D2/*-14/
{
JP NCU1
}
$D6/$20/
{
SUB20H
}
$77/
{
LD (HL),A
}
$C3/*-20);
{
JP LI
}
{L2: EQU $ }
end;
begin
Write(‘Ingrese el string:’);
ReadLn(alfa);
Mayusculas(alfa);
WriteLn(alfa);
end.
d) Overlay
Una de las mejoras mas importantes
en el Turbo Pascal es la posibilidad
del manejo de overlay. Este comando
permite crear programas que son
mayores que la capacidad de memo-
ria de la maquina. Esto se hace au-
tomaticamente cargando subprogra-
mas, llamados overlays, que se alma-
cenan en disco hasta
que se necesiten para
la ejecucion del pro-
grama.
Generalmente, para
crear un overlay, se
pone ‘overlay’ al
principio de la fun-
cion o "procedure"
que se quiera usar.
Cuando el Turbo Pas-
cal encuentra el co-
mando ‘overlay’, au-
tomaticamente com-
pila ese subprograma
en un archivo separa-
do. Vease en el ma-
nual del Turbo Pascal
la implementacion de
los overlays en este
lenguaje.
e) shr y shl
Shr viene de ‘shift
right’ y shl de ‘shift
left’. Estas operacio-
nes pueden utilizarse
solo con variables del
tipo "integer". Basi-
camente cumplen la
misma funcion que
los comandos de
‘shifteo’ que tiene el
Z-80 con relation a
los bytes.
f) String
Cuando utilizamos el
Pascal estandar real-
mente no es muy facil
usar los strings como
en, por ejemplo, el
MSX BASIC. El Tur-
bo Pascal agrega el tipo string, con
funciones que permiten manipularlos
con la misma facilidad que en BA-
SIC. En oposicion a los arreglos de
caracteres, que deben tener una longi-
tud fija, los string tienen longitud
variable, que puede ir de 1 a la canti-
dad maxima especificada en la decla-
ration de la variable (maximo 255
caracteres).
g) XOR
Turbo Pascal tambien agrega el ope-
rador XOR aplicable tanto a operan-
dos del tipo "integer" como a los del
tipo Boolean. Para los operandos"
integer", se realiza la operacion XOR
entre los bits de cada "integer". Para
los operandos Boolean, se obtiene
TRUE o FALSE de acuerdo al resul-
tado de la operacion.
PROCEDIM1ENTOS
INCORPORADOS
Turbo Pascal incorpora un buen pa-
quete de procedimientos que facilitan
en gran medida la programacion. Se
pueden dividir en tres categorias:
manejo de pantalla, strings y manejo
del sistema operativo.
a) Procedimientos para manejo de
pantalla
Estos son algunos de los procedi-
mientos incorporados al Turbo Pas-
cal:
Procedimiento
Efecto
CrtEol
Borra hasta el fin
de la linea
CrtExit
Envia un string
de reset a la pantalla
Crtlnit
Envfa un string de
inicio a la pantalla
ClrScr
Borra pantalla
DelLine
Borra una linea
GotoXY
Equivale al LOCA
TE del BASIC
InsLine
Inserta una linea en
bianco.
b) Funciones para strings
Como quedo dicho anteriormente, el
Turbo Pascal incorpora el tipo
‘string’ y funciones para manejarlos.
Algunos de estos procedimientos
son:
Pag. 10
T U R BOP A S C A L
Procedimiento
Efecto
Delete
Borra una parte
de un string,
dada la posicion
inicial y la
cantidadde
caracteres.
Insert
Inserta un string
dentro de otro
Str
Convierte un inte-
ger o real a string
Val
Convierte un string
a real o integer
Las siguientes funciones tambien
soportan los strings:
Funcion
Efecto
Copy
Retoma un substring,
copia de un string
Concat
Retoma un string que
es el resultado de la
concatenacion de
dos strings
Length
Equivale al LEN de
BASIC
Pos
Equivale al INSTR de
BASIC
c) Procedimientos para interfase
con el sistema operativo
Turbo Pascal permite acceder al sis-
tema operativo a traves de dos proce-
dimientos especiales: Bdos y Bios.
En general, para que todo funcione
correctamente en MSXDOS, debere-
mos utilizar el procedimiento Bdos,
pues el Bios emplea parte del CP/M
que es incompatible con el
MSXDOS.
D1FERENCIAS ENTRE EL
TURBO PASCAL Y EL
PASCAL ESTANDAR
Aparte de las extensiones y mejoras
incluidas por el Turbo Pascal, presen-
ta algunas diferencias con el estandar.
Los programadores experimentados
de Pascal que desean utilizar el MSX
con el Turbo deberan tenerlas en
cuenta para evitar problemas.
a) El procedimiento ‘new’, que per-
mite alojar variables dinamicas para
utilizar con punteros, no acepla espe-
cificar un registro variante. Si se ne-
cesita trabajar con ellos, se debera
utilizar el procedimiento ‘getmem’.
b) No se permite que un ‘goto’ salte
fuera del bloque que se especifica.
Esto implica que tanto el ‘goto’ como
la etiqueta a donde se salta deben estar
en el mismo bloque. (Pero si usamos
programacidn estructurada, esto no es
ningun problema... pues jnuestros
programas no tienen ‘goto’!)
c) No podremos utilizar parametros
tipo ‘var’ en rutinas recursivas (en la
version de PC esto esta permitido).
d) No estan implementadas ‘get’ ni
‘put’; se debe usar ‘readry ‘write’ que
fueron extendidas para su utilization
con disquete.
e) Se puede utilizar la palabra clave
‘packed’, pero no tiene efecto.
Asimismo.’pack’ y ‘unpack’ no fue-
ron implementados.
f) El procedimiento ‘page’ no esta
implementado.
CONCLUSIONES
El MSXDOS permite acceder a la
gran biblioteca de programas existen-
te para CP/M-80, incluyendo famo-
sos lenguajes como el Turbo Pascal.
Viendo tanto su facilidad de uso como
sus extensiones, es facil ver como se
convirtio en un estandar ‘de facto’ de
los compiladores Pascal y como se ha
extendido su uso a nivel profesional.
(Como chimento final, diremos que la
linea ‘Agropack’ -sistemas deaplica-
cion para el agro que comercializa
Telematica S.A.- fue desarrollada en
Turbo Pascal).
Hugo Daniel Caro
SIEMPRE LO ULTIMO Y
LO MEJOR
Envios al interior
JUEGOS MSX Y SPECTRUM EN DISCO Y CASSETTES - UTIUTARIOS - GRAFICADORES Desde A 8 c/u.
MSX2: EXCLUSIVOS: ALIENS U.S.A. - FI - SPIRIT - DEEP FOREST - HARDBALL - BUBLE BUBLE - 1942 - FIST II KARATE -
LUPIN 3 D - DAVID H - DRAGON QUEST - LIV. SUPONGO - MIST. NILO - NEMESIS m Y 100 MAS / TODOS 128 K
MSX1: EXCELENTES: OPERATION WOLF - FINAL COUNTDOWN - TETRIS - PACMANIA - ROCK7s T ROLLER - COLISEUM -
SKYFOX TITANIC 1 Y 2 - PSICHO PIG UXB - HABILIT y 100.000 mis.
MSX UTIUTARIOS GEOS PRINT SHOP PLUS 4.0 - HARDCOPY 3.0 - PORTFOLIO - MSX CHARTS - SISTEMA EDITOR DE
AVENTURAS (PAW) RTTY - GRAPHOS m - TOOLS II - EASY 2.0 - ALFABETOS ETC Y 600 MAS
COPYRIGHT 1989 REALTIME LTD DERECHOS RESERVADOS
LAS NOVEDADES LAS TRAE SIEMPRE PRIMERO REALTIME
LO ASESORAMOS CON PERSONAL ESPECIALIZADO CON MAS DE 7 ANOS DE EXPERIENCIA
Av. Santa Fe 2450, local 40, CP. 1425 - Pucyrrcdon 1357, local 58
821-9438
Pdg. 11
COMPUTO Y
PRESUPUESTO
Tipo:Utilitario
Autor:Arq.Eduardo G.Armanino
E ste programa es un utilitario des-
tinado a arquitectos, ingenieros,
constructores, etcetera que permite
realizar el computo metrico y el pre-
supuesto de una construction a partir
de cada una de sus partes, aunque con
leves variantes podria ser utilizado
por otras disciplinas.
Este programa esta dividido en dos
partes, una la correspondiente al
computo y la otra al presupuesto. En
la primera se ingresan los datos co-
rrespondientes a cada uno de los
items, es decir las dimensiones, y la
computadora nos imprimira el volu-
men o la superficie de los mismos,
segun lo que corresponda. En la se-
gunda se ingresan los precios parcia-
les y totales. Esta division permite
que pueda realizarse, si asi se desea,
solamente el computo.
El manejo del programa es sencillo ya
que en el menu aparecen las distintas
operaciones posibles, y a medida que
se va ejecutando se visualizan las
instrucciones para ir continuando
con el mismo.
La estructura general esta marcada
por esa division entre las dos partes, si
bien en algunos sectores se mezclan
las rutinas. Esto es debido a dos moti-
vos: l fi ) a que surgio como un progra-
ma simple, y luego se le fueron agre-
gando mas operaciones y 2 9 ) a que
con la finalidad de aprovechar al
maximo las rutina que se repiten en
las distintas operaciones, hay bastan-
te cantidad de ‘gosub’ y ‘goto’.
INSTRUCCIONES:
Computo y presupuesto
Primeramente aparece en pantalla la
presen tac ion. En este punto se dcbe
esperar unos instantes, ya que aqui se
realizan los pokes correspondientes a
las lecturas de la pantallas, se dimen-
sionan las matrices, se redefinen los
caracteres ‘S’ y *?’, y secolocaun 0 a
partir de la direccion 60000! hasta la
direccidn 61 100!. Esto ultimo es ne-
cesario debido a que las variables
alfanumericas no se ingresan ni se
imprimen en pantalla como tales, sino
que se van almacenando a partir de la
direccion 60000! letra por letra, por
su codigo ASCII. Esto permite ingre-
sar todos los subitems que necesite-
mos sin alterar la memoria disponible
para cadena de caracteres. Se pueden
ingresar hasta diez subitems de seis
caracteres cada uno, por cada uno de
los dieciocho items. Esta cantidad de
items puede ser variada,deacuerdo a
las necesidades de cada uno teniendo
las siguientes precauciones: 1°) di-
mensionar las matrices en la linea 200
reemplazando el N e 18 por el que
corresponda, 2°) cambiar el bucle de
la linea 210 con el valor que corres-
ponda y 3 9 ) cambiar el bucle de la
linea 500 con el mismo valor y agre-
gar 0 eliminar los datos de las lineas
510 y 520. Se debe tener la precau-
tion de no agregar demasiada canti-
dad de items ya que se puede agotar la
memoria disponible.
Luego de la presentation se inicia con
el computo metrico. Oprimiendo
cualquier tecla se visualiza el menu.
Oprimiendo la letra ‘K’ se inicia des-
de el item 0. En cada item se pueden
ingresar hasta diez subitems de seis
caracteres cada uno. Estos pueden ser
mayusculas o minusculas o numeros.
Si algun subitem tuviera menos de
seis caracteres, los faltantes se deben
completar con espacios. Una vez
ingresados los seis caracteres se pasa
directamente a ingresar las dimensio-
nes, sin oprimir ‘enter’. El oprimir
‘enter’ mientras estamos ingresando
el nombre de algun subitem ocasio-
nara que borre el mismo y nos permita
realizar correcciones en caso de haber
ingresado un dato erroneo, tambien
nos permite pasar al item siguiente 0
abandonar el computo.
Para cada subitem se pueden ingresar
hasta tres dimesiones: largo, ancho y
alto. Si fuera un subitem que no tiene
dimension sino que se mide por uni-
dades se debe colocar la cantidad de
las mismas en laprimera dimension y
0 en las otras dos. Una vez ingreadas
las dimensiones de un subitem la
computadora imprimira la superficie,
volumen, unidades del mismo, segun
lo que corresponda.
La primer dimension de un subitem
siempre debe ser mayor que cero, ya
que de lo contrario ocurre lo mismo
que al oprimir ‘enter’ mientras ingre-
sabamos el nombre del subitem.
En el caso de que un item tenga
menos de diez subitems, una vez in-
gresado el ultimo necesario, se opri-
men las teclas ‘graph’ + ‘p’ y se pasa
automaticamente al item siguiente.
Una vez finalizado el compute metri-
co se pueden visualizar en el menu las
distintas operaciones que se pueden
realizar, y que son las siguientes:
1) Listar los nombres de los items.
Oprimiendo ‘L’ aparecera toda la lis-
ta.
2) Listar un item. Oprimiendo ‘I’
aparecera el item correspondiente
con todos los dates ingresados hasta
el momento.
3) Modificar un item. Oprimiendo
‘A’ se podra agregar o quitar cual-
quier subitem. Primero la computa-
dora preguntara si se desea agregar o
quitar, debiendose ingresar ‘a’ o ‘d’
segun el caso. Luego preguntara a que
item corresponde la modificacion y lo
listara, preguntando por el subitem a
agregar o quitar. En el caso de que
algun subitem ya existente se desee
modificar parcialmente, primero se
debe anular y luego se debe agregar
nuevamente.
4) Realizar otro compute. Oprimir
‘O’.
5) Finalizar. Oprimir ‘F’.
6) Pasar al presupuesto. OprimirT’.
En el presupuesto se inicia de forma
similar al compute, apareciendo pri-
meramente todas las opciones dispo-
nibles.
Oprimiendo ‘K’ se comienza con el
primer item. Se visualizaran en la
pantalla todos los subitems corres-
pondientes con sus correspondientes
superficies, volumenes o unidades,
segun corresponda. La visualization
de los subitems se ira haciendo uno
por uno, debiendos ingresar el precio
uni tario de cada uno y la computadora
imprimira el precio parcial. As! se
debe realizar con todos los subitems
hasta llegar al ultimo. Si algun item
tiene menos de diez subitems basta
con oprimir ‘graph’ + ‘p’ y se impri-
mira en la pantalla el precio total del
item y se pasara al siguiente.
Una vez finalizado el presupuesto
ocurre lo mismo que con el compute,
es decir que aparecen todas las opcio-
nes.
Una vez realizado el presupuesto
cualquier modificacion de algun item
que se quiera realizar, se debera hacer
tanto en el compute como en el presu-
puesto, tarea que la computadora nos
indicara automaticamente.
Para listar un item , igual que en el caso
anterior, el listado se realizara del
item indicado en el compute y en el
presupuesto.
En el caso de modificar algun item, ya
sea agregando o quitando algun subi-
tem, se modificara automaticamente
el precio total del item, imprimiendo-
se el mismo en la pantalla. Tambien se
modificara en este caso el precio total
de la obra.
En el presupuesto tambien tenemos la
opcion ‘C’ que nos permite visualizar
en pantalla el nombre de todos los
item con sus correspondientes precios
y el porcentaje que le corresponde a
cada uno en el total de la obra y se
imprimira en la parte inferior de la
pantalla el costo total de la misma.
ESTRUCTURA
DELPROGRAMA:
10-240: Preparacion: dimensiona-
miento de vectores y matrices, re-
definition de caracteres, pokes.
250-390:Preparacion compute me-
trico.
400-490:Elecci6n de opciones.
500-540:Lista de items.
550-1040:Iniciodecdmputometrico.
1050- 1410: Modificacion de item:
agregar o eliminar subitem.
1420-1710:Lista un item complete
(compute solamente).
1720-1810:Preparacion presupuesto.
1820-1910:Eleccion de opciones.
1920-2280:Inicio de presupuesto.
2290-2420: Costo total de la obra.
2430-2650:Modificaci6n de item
(compute y presupuesto).
2660-2840:Listadeun item complete
(con presupuesto).
2850-3030:Rutinas que se repiten en
varias operaciones.
LISTA DE
VARIABLES:
I = N a de item.
G = N e de subitem.
VC = Codigo ASCII del caracter in-
gresado.
NN = Direction de memoria donde
se almacena VC.
PE = Peek de una direction de memo-
ria.
CA (I,G) = Dimension a de un subi-
tem.
CB(I,G) = ‘’b " ‘’‘’
CC (I,G) =” c *’
continua la lista de variables de
Compute y Presupuesto.
VD (I,G) = Volumen, superficie o
cantidad de un subitem.
PP (I,G) = Precio unitario de un subi-
tem.
V (I,G) = Precio total de un subitem.
PIT (I) = Precio total de un item.
FIN = Precio total de la obra
M = Position para imprimir en panta-
lla.
B$ (I) = Nombre de un Item.
Z$ = Opcion elegida.
0 'computo y presupuesto
2 '1989 eduardo g. armanino
5 'preparacion
i 0 KEYOFF : SCREENO : W I DTH40 : VDP < 7 )
=49
20 CLEAR200
30 CLS : E*= "»»»»»»»»»»<
<<<<<<<<<<<<<<<<<<": PRINTE*:L0CA
TEO, 21 SPRINTED
40 LOCATE 10, 10: PR I NT " un minuto p
or favor "
50 PRINT : PRINT : PR I NT "C 0 M P U T
0 y PRESUPUEST 0“
60 T=BASE ( 2 ) +8*63 : F0RH=TT0T+7
70 RE AD A : VPOKEH , A : NE X T
80 T=BASE < 2 > +8*36 : F0RH=TT0T+7
90 READA
100 VPOKEH, A -.NEXT
1 1 0 DATA 128,192, 224 , 240 , 240 , 224 ,
192,128,32,32,112,248,80,248,136
1 Q
120 'lectura de pantallas
1 30 DEFUSR8=5 1 770 ! : DEFUSR9=5 1810
140 F0RR=5 1 750 ! T05 1839!
150 READD: POKER, D:NEXTR
1 60 DAT A64 ,68,72,76,80,84,88,92,
96 , 100 ,104,108,112,116,120,124,0
, 0 , 0,0
170 DATA1 ,12,0,33,0,0,62,32,205,
86.0. 33.38.202.58.248.247.133.11
1.30.0. 86.33.0.0.1.192
180 DATA3, 62, 84, 211 ,168,205,89,0
,62,80,211 , 168,201 ,33,38,202,58,
248.247.133.111. 126.103.46.0. 17,
0,0,1, 192,3,62,84,211 , 168,205,92
,0,62,80,211,168,201
1 90 FOR I =60000 ! T06 1 1 00 ! : POKE 1,0:
NEXT
200 D I MB* (18) , V ( 1 8 , 1 0 ) , C A (18, 10)
, CB <18,10) ,PIT (18) , CC (18,10) ,VD<
18,10) , PP (18,10) , PO < 18)
210 F0RI=0T017: READS* < I ) z NEXT
220 C*="descrip. a b
c v”
230 D*="presione cualquier tec la
para continuar "
240 W*="
" : U=16: CLS
250
L0CATE3
,5: PRINT"
**•*
** *
*
***
*
* *** **
*
*
* **
**
* * *
* *
* *
*
*
* * * *
***
* * *
*
*"
260
L0CATE3
,8: PRINT"
*
* * *
*
*
*
* * *
*
***
** *
*
* **
*
**"
270 LOC ATEO ,16: PR I NTD*
280 I F I NKE Y*= " " THEN280
290 CLS: A*=" —
"SPRINT
300 PRINT"li E N U" : PRINTA*
310 PR I NT "K comienza" sPRINT
320 F’RINT"L lista i terns" : PRINT
330 PRINT" A agrega o desagrega
item" sPRINT
340 PRINT" I lista un item":PRI
NT
350 PR I NT "F final i 2 a" sPRINT
360 PR I NT "0 otro c"mputo" : PRIN
T
370 PRINT "P presupuesta" : PRINT
380 PR I NT "C . costo total y pore
entajes”
390 LOC ATEO , 22 : PR I NTE* : EC=USR8 < 0
)
400 Z*= : INKEY*: IFZ*=" "THEN400
410 I F Z *= " K " THEN500
420 IFZ*=" I "THEN1430
430 I F Z *= " L " THEN500
440 IFZ*="P"THEN1730
450 I F Z*= " A " THEN 1 060
460 IFZ*="0"THEN20
470 IFZ*= " F " THENEND
480 IFZ*="M"THENLEC=USR9<0)
490 G0T0400
500 CLS: F0RI=0T017: PRINTS* (I) : NE
XT
510 DATAO derechos y honorarios
,1 trabajos prel iminares ,2 mam
poster i a, 3 hormigon y 1 osas cer
am. ,4 ai si aciones,5 cubiertas,
6 revoques,7 cielorrasos
520 DATA 8 contrapi sos,9 pisos
y zocalos ,10 revesti mi entos , 1 1 c
arpi nter i a , 12 inst. sanitarias,l
3 inst. gas, 14 inst. electricas,
15 pintura,16 vidrios,17 varios
530 I F Z *= " K " THEN550
540 GOTO 1570
550 LOCATEO, 20:PRINTD*,E*
560 I F I NKEY*= " " THEN560
570 FOR I =0T0 1 7 : GOSUB 1 690
580 G0SUB2950
590 F0R6=0T09
600 'escribir subitem
610 LOCATEO , U: PR I NTD*
620 K *= I NKE Y* : I FK*= " " THEN620
630 LOC ATEO, U : PR I NT W*
640 IFK*=CHR* (230) THENGOSUB 1 020 :
G0T0610
650 IFK*=CHR* ( 148) THENLC=USR9 (0)
•.GOTO 400
660 IFK*=CHR*(219)THEN9B0
670 VPOKEM , G+48
680 M=M+1: BEEP: VPOKEM, 63
690 FORD=lT06: M=M+1 : VPOKEM, 2 19
700 V*= INKEY*: I FV*= " " THEN700
710 I F V*=CHR* (219) THEN960
720 IFV*< >CHR* (13) THEN750
730 M=M~D- I : F0RW= 1 T06 : VPOKE W+M , 0
: NEXT
740 F0RW=NN- < D-2 ) TONN : POKE W , 0 : NE
XT : LOCATEO, G+5: PRINTW*: GOTO 610
750 VC= ASC ( V* ) : VPOKEM , VC
760 G0SUB3020 : POKENN , VC : BEEP : NE X
TD : VPOKEM- 6 , 0
770 LOCATE 10, G+5 : BEEP : INPUTCAd,
G)
780 LOCATE 10, G+5: PRINTSPC <9)
790 LOCATE 1 0 , G+5 : PR I NTUS I NG " ### .
##" 5 CA < I ,G)
800 I FCA < I , G ) =0THEN 1 550
810 'ingreso b
820 LOCATE 17, G+5 : BEEP : I NPUTCB < I ,
6 )
830 LOC ATE 17, G+5: PRINTSPC (9)
840 LOCATE 1 7 , G+5 : PR I NTUS ING"####
# . ##" 5 CB ( I , G)
850 IFCBd ,G).=OTHENVD(I ,G)?CAU ,
G) : GOTO 930
860 'ingreso c
870 L0CATE25 , G+5 : BEEP : I NPUTCC ( I ,
G)
880 L0CATE25 ,G+5: PRINTSPC ( 10)
890 L0CATE25, G+5: PRINTUSING"####
#.##"5 CCd ,G)
900 IFCC (I ,G) =0THENVD (I ,G) =CA < I ,
G) *CB ( I , G) : GOTO 930
910 'v subitem
920 VD < I ,G) =CA ( I ,G) *CB < I ,G) *CC < I
,< 3 )
930 L0CATE33, G+5: PRINTUSING"####
. ##" ; VD (I ,G)
940 M=M+33
950 IFZ*="A ,, THENU=16: GOTO 1570
960 NEXTG
970 I F I NKEY*= " " THEN970
980 BEEP: NEXT I
990* IFINKEY*=""THEN990
1 000 BEEP : LC=USR9 ( 0 ) : G0T0400
1010 ‘escrit pantalla actual
1020 EC=USR 8 ( 1 ) : LC=USR9 <0)
1030 F0RJ=1T01500: NEXT : LC=USR9 < 1
) : RETURN
1040 GOTO 400
1050 'mqdif item
1060 CLS : PR I NT A* : U= 1 8
1070 BEEP: INPUT "agrega o desagre
ga <a/d)" 5 AGS
1080 IFAG*="a"THENBG*="agregar " :
GOTO 1110
1 090 I FAG*= " d " THENBG*= " desagr ega
r":G0T0 1110
1100 CLS: GOTO 1070
1110 PRINT: BEEP: PRINT" i ngrese el
n#mero de item a modi f icar ": INP
UTI
1120 I F I > 1 7THEN 1 060ELSECLS sPRINT
: PRINTS* (I) : PRINTA*;
1130 PRINTC* , A*
1140 M=200
1150 F0RG=0T09
1160 VPOKEM, G+48
1 1 70 FORD= 1 T06 : G0SUB3030
1180 I FPE=0THEN 1210
1190 VPOKEM+D+1 , PE: NEXT
1200 GOSUB 1640
1210 M=M+40: NEXTG
1220 LOCATEO, 15: PRINT A * 5
1 230 BEEP : LOCATEO , 20 : PR I NT " i ngr e
se n#mero de subitem a " ;BG*:BEE
P: INPUTG
1 240 I FG >9THENLDCATE0 , 20 : PR I NT W*
: GOTO 1230
1 250 I FG >9THEN 1 230ELSEMG=G ,
1260 I FAG*= " d " THEN 1310
1270 'agregar subitem
1280 LOCATEO , 20 : PR I NTW* , E*
1290 M= (G+5) *40: G0T0610
1300 'desagregar subitem
1310 L0CATE0,20:PRINTW*,E*
1320 F0RD=1T06
1330 G0SUB3020: POKENN, O: BEEP
1340 NEXTD
1350 CA ( I ,G) =0: CB ( I ,G) =0: CC (1,6)
-0: VD d ,G) =0
1 360 LOCATEO , 1 6 : PR I NTD* : LOCATE 1 ,
G+5: PRINTW* '
1370 I F I NKE Y*= " " THEN i 370
1380 IFPR< 1THENCLS: LC=USR9 (O) : GO
TO 400
1390 PIT (I ) =P I T ( I ) —V (I , G ) :FI N=F I
N~V(I,G)
1400 IFINKEY*=" "THEN1400
1410 GOTO 2670
1420 'lista un item
1430 CLS
1440 PRINTsBEEP: INPUT"que item q
ui ere 1 i star " ; I /
1450 I F I > 1 7THEN 1 430ELSEM=200
1460 GOSUB 1690
1470 F0RG=0T09: VPOKEM, G+48
1480 FORD= 1 T06 : GOSUB3030
1490 I F"F’E=0THEN 1 520
1500 VPOKEMf-D+1 ,PE: NEXT
1510 GOSUB 1640
1520 M=M+40: NEXTG
1 530 LOCATEO , 1 5 : PR I NT A* ;
1540 GOTO 1570
1550 LOCATEO , G+5 : PR I NTW*
1560 M=M-~7 : GOTO 610
1570 LOCATEO, 21 : PRINTD*
1580 IF INKEY*="" THEN 1580
1590 IFZ*—" I " ANDPR>0THEN2670
1 600 I F Z *= " A " ANDPR >0THEN2440
1610 LC=USR9 (O)
1620 I FPR >OTHEN 1 820
1630 GOTO 400
1 640 LOCATE 1 O , G+5 : PR I NTUS I NG " ###
. ##" ; CA (I ,G)
1 650 LOCATE 1 9 , G+5 : PR I NTUS I NG " ###
. ##" ; CB d ,G>
1 660 L0CATE27 , G+5 : PR I NTUS I NG" ###
. ##" ; CC (I ,G)
1 670 L0CATE33 , G+5 : PR I NTUS I NG " ###
#. ##” ; VD < I ,G)
1680 RETURN
1690 CLSs PRINTS BEEP: PRINTED < I) :P
RINTA*;
1700 PRINTC*,A*
1710 RETURN
1720 'inicio presup
1730 CLS: PR=1
1740 L0CATE6,2:PRINT”*** *** *
***
***
* *
*
* *
* *
* *
*
***
*** ***
**
*
*
* *
* *
*
*
*
*
*
*
*
***
***
**”
1750
L0CATE4 ,9: PRINT
" ***
*
*
*
***
***
*** **
*
* *
* *
* *
* *
***
* * *■**
**
*
*
*
* *
* *
*
*
* *
*
**
*
***
■***
* •**”
1760 LOC ATEO ,19: PR I NTD*
1770 S*=”tipo cant.
*/u ♦total”
1780 U=1 6
1790 F*=”precio total del items
*”
1800 IFINKEY*=” "THEN 1800
1810 LEC~USR9 (0)
1820 Z*=INKEY*: IFZ*=” "THEN1820
1830 IFZ*=”K”THENCLS: GOTO 1920
1840 IFZ*= ,, I”THEN1430
1850 IFZ*=”A”THEN1060
1860 IFZ*=”0”THEN20
1870 I F Z*= " L ” THEN500
1880 I F Z *= " C " THEN2300
1 890 I F Z *= ” F ” THEN END
1900 IFZ*=”M”THENLC=USR9<0)
1910 GOTO 1820
1920 FOR I =0T01 7 : GOSUB2920
1930 G0SUB2950
1940 F0RG=0T09
1950 'esdribir subitem
1960 LOCATEO, U: PRINTD*
1 970 K*= I NKE Y* : I FK*= ” ” THEN 1 970
1980 LOCATEO , U s PR I NTW*
1 990 I FK*=CHR* < 230 ) THENG0BUB2270
; GOTO 1960
2000 I FK*=CHR* <148) THEN2840
2010 I FK*=CHR* (219) THEN2 1 80
2020 VPOKEM , G+48
2030 FORD= 1 T06 : G0SUB3030
2040 I FPE=0THEN2 1 50
2050 VPOKEM+D+1 , PE: NEXT
2060 'cant subitem
2070 LOCATE 1 3 , G+5 : PR I NTUS I NG " ###
. ##” 5 VD < I , G)
2080 I F VD (1,8) =0THEN2800
2090 'orecio unit
2100 LOCATE20 , G+5 s BEEP : INPUTPP<I
f®>
2110 L0CATE20 , 8+5 s PR I NTSPC < 1 0 )
2 1 20 LOC ATE20 , G+5 s PR I NTUS I NG ” ###
##.##”;PP(I,G)
2130 'precio subitem
2140 V(I ,G)=VD(I ,G)*PP<I ,G) sLOCA
TE30 , G+5 s PR I NTUS I NG ”######.##”; V
( I , G)
-2150 M=f1+40
2160 I F Z*= ” A ” THEN2620
2170 NEXTG
2180 F0RN=0T06: PIT < I ) =P I T < I ) +V ( I
,N) sNEXT
2 1 90 LOCATEO , 1 5 s PR I NTA* ; : G0SUB2S
90
2200 LOCATEO, 22 : PR I NTD*
2210 I F I NKE Y*= ” u THEN22 1 0
2220 F I N=F I N+P I T < I )
2230 NEXT I
2240 IFINKEY*="”THEN2240
2250 BEEP s LEC=USR9 < O ) : GOTO 1 820
2260 'escrit pantalla actual
2270 EC=USR8<1> :LC=USR9<0>
2280 FOR J = 1 TO 1 500 s NE X T s LC=USR9 < 1
) : RETURN
2290 ' CDsto total
2300 CLS
2310 BEEPs PR I NT "desari pci "n
♦ 7.”
2320 F0RI=0T017
2330 BEEP: PRINTED (I)
2340 IFPIT < I ) =0THEN2370
2350 P0<I)=PIT<I)/FIN*100
2360 L0CATE22 , I + 1 : PR I NTUS I NG ” ###
### . ##” 5 PIT < I ) ; s PRINTTAB (34) US IN
G”##. ##” ; PO ( I )
2370 NEXT
2380 PRINT”costo total de obra: ”
5 : PRINTTAB (22) USING”###### . ##” ; F
IN; : PRINTTAB <33) ”100. 00" , A*
2390 LOCATEO ,21: PR I NTD* , E*
2400 I F I NKEY*= ” " THEN2400
2410 LC=USR9 <0)
2420 GOTO 1820
2430 'modi f item
2440 CLS: PRINT: PRINTED < I ) : PRINTA
2450 PR I NTS*, A*
2460 M=200
2470 F0R6=0T09
2480 VPOKEM, G+48
2490 F0RD=1T06: G0SUB3030
2500 I FPE=0THEN2530
2510 VPOKEM+D+1 , PE sNEXT
2520 G0SUB2850
2530 M=M+40: NEXTG
2540 LOCATEO, 15: PR I NT A* ;
2550 BEEP : PR I NTF* ; : PRINTTAB (30) U
SING”######. ##” :PIT < I )
2560 F I N=F I N—P I T ( I > i PIT < I > =PIT < I
> —V ( I , G )
2570 'modif subitem
2580 LOCATEO , 20 : PR I NTW* , E*
2590 G=MG
2600 L0CATE20,G+5: PR I NTSPC <«19)
2610 M= (G+5) *40: G0T02100
2620 PIT(I)=PIT(I)+V(I,G)
2630 G0SUB2890
2640 F I N=F I N+P I T < I )
2650 U=1 6: GOTO 2820
2660 'lista un item
2670 CLS
2680 M=200
2690 G0SUB2920
2700 F0RG=0T09
2710 VPOKEM, G+48
2720 FORD= 1 T06 : G0SUB3030
2730 IFPE=0THEN2760
2740 VPOKEM+D+1 , PE: NEXT
2730 G0SUB2850
2760 M=M+40: NEXTG
2770 LOCATEO, 15:PRINTA*;
2780 G0SUB2890
2790 GOTO 2820
2800 LOCATEO, G+5: PR I NTW*
2810 GOTO 1960
2820 LOCATEO ,21: PR I NTD*
2830 I F I NKEY*- ” ” THEN2830
2840 LC=USR9 (0) : GOTO 1820
2850 LOCATE 1 3 , G+5 : PR I NTUS I NG ” ###
.##”; VD(I,G)
2860 L0CATE20 , G+5 : PR I NTUS I NG ” ###
##. ##” ; PP < I ,G)
2870 L0CATE30 , G+5 : PR I NTUS I NG ” ###
###. ##” ; V < I ,G)
2880 RETURN
2890 BEEP: LOCATEO, 16: PR I NTF*
2900 L0CATE30 , 1 6 : PR I NTUS I NG ” ####
##.##”; PIT < I )
2910 RETURN
2920 CLS: PRINT : BEEP: PRINTS* ( I ) : P
RINTA*;
2930 PR I NTS*, A*
2940 RETURN
2950 LOCATEO, 17: PRINTA*
2960 LOCATEO, 18: PR I NT "code + f
= -final iza comp, o presup.”
2970 PRINT”enter = reingres
a subitem”
2980 PR I NT "code + m = men#”
2990 PRINT”graph + p = contin#a
al item siguiente”
3000 BEEPsPRINTE*
3010 M=200: RETURN
3020 NN=60000 ! + I *60+G*6+D- 1 : RETU
RN
3030 PE=PEEK < 60000 ! + 1 *60+G*6+D- 1
) : RETURN
LOAD
NUEVA
DIRECCION
A partir del 21 de marzo la nueva direccion de LOAD MSX es
M^jico 625 - Piso 3 2 (1097) - Buenos Aires
Tel: 30 0991 y 331 7185
PERIFERICOS TALENT
No todos los usuarios conocen realmente la variedad de perifericos que existen para su MSX.
Mas aun,desconocen las aplicaciones que pueden tener,como por ejemplo administrar una bascula
para camiones de 60 toneladas.
E
m n general, lo primero que ob-
serva el usuario potencial de una com-
putadora es la gama de perifericos que
puede disponer para su posible adqui-
sicion.
En el caso de las Talent MSX, la gama
es amplia y esta pensada para un
conjunto muy interesante de aplica-
ciones dentro de las computadoras
hogareilas. Demas esta decir que
como son equipos desarrollados para
la norma MSX, cualquier equipo in-
cluido en la misma podra utilizar es-
tos perifericos sin problemas.
a) Unidad de discos
El primer gran paso que suele dar el
usuario novato es comprar una uni-
dad de discos , ya que luego de trabajar
con un datasete, las ventajas en cuan-
to a confiabilidad y velocidad son im-
portantes.
En el caso de las unidades Talent, la
DPF-550/555 es la que actualmente
se encuentra disponible en plaza y
permite almacenar 360 kbytes en dis-
quetes de 5 1/4 pulgadas. Su veloci-
dad de transferencia permite que la
carga y grabacion de datos sea muy
rapida y confiable. Ademas es com-
patible en lectura y grabacion con las
PC via el MS-DOS lo que permite in-
tercambiar datos entre esas computa-
doras y nuestra MSX.
Por otra parte, si somos felices posee-
dor de una MSX2 Turbo, podra utili-
zar sin modificaciones el CP/M Plus,
otro sistema operativo mas veloz que
funciona en estas computadoras.
CENTROS DE ASISTENCIAAL USUARIO DE TALENT MSX
CAPITAL FEDERAL
Taller Logo de computacion
Junin 1930
Centro de Computacion Clinica
Asistencia al Usuario Discapacitado
Ramsay 2250 - Pabellon F
Tel. 784-2018
Barrio Norte
Uriburu 1063 - Tel. 83-6892/826-
6692
Belgrano
Cabildo 735 - Tel. 772-9088
Flores
Gral. Artigas 354 - Tel. 612-3902
Palermo
Guatemala 4733 - Tel. 71-4124
San Telmo
Chile 1345 - Tel. 37-0051 al 54
GRAN BUENOS AIRES
Caseros
Medina y Alberdi - ler piso - Tel. 750-
8016.
Castelar
C. Casares 997 - Tel. 629-2247
Lands
Caaguazu 2186 - Tel. 240-0378
Mor6n
Belgrano 160 - Tel. 629-3347
Ramos Mejia
Bolivar 55 - ler. piso - Tel. 658-4777
San Justo
Peru 2515 (esq. Arieta)
Vicente L6pez
Av. Maipu 625 - Tel. 797-672
Virreyes - Pdo. de San Fernando
Avellaneda 1697 - Tel. 745-7963
mmm
.
Pag. 16
b) Monitor
La segunda adquisicidn suele ser el
monitor monocromatico, sobre todo
si el usuario tiene intention de usar su
computadora en aplicaciones “profe-
sionales”, es decir, en contabilidad,
ingen ieria y ciencias. La necesidad
del monitor surge de que, aunque los
colores que nos brinda la computado-
ra son muy bonitos, para trabajar
durante un tiempo medianamente
prolongado no son muy recomenda-
bles para la vista, pues generalmente
producen fatiga ocular.
c) Modem
En los ultimos dos anos hemos visto
surgir el furor por la telematica, que
es la conjuncion de la informatica con
las telecomunicaciones. En nuestro
pais comenzaron a surgir diversas
bases de datos y mensajerias electro-
nicas que hacen de este periferico el
punto central de atencion.
Gracias al mismo, un usuario de La
Quiaca podra enviar sus datos en for-
ma instantanea a otro ubicado en
Ushuaia, si ambos poseen modem (y
telefono, por supuesto).
El ambito de aplicacion de la tele-
matica se va extendiendo dia a dia y
cada vez son mas los usuarios que
INTERIOR DEL PAIS
Bahia Blanca - Buenos Aires
Gral. Paz 257 - Tel. (091) 31582
Junln - Buenos Aires
Gandini 75 - Tel. (0362) 27956
La Plata - Buenos Aires
Calle48No. 529 - Tel. (021) 249905 al
07
Mar del Plata - Buenos Aires
Av. Luro 3071 - 13o. “A” -Tel. (023)
43430
Necochea - Buenos Aires
Calle 61 No. 2949 - Tel. (0262) 26583
piensan que este periferico debe for-
mar parte de su equipamiento.
d) Teclado numerico
Cuando hablamos de aplicaciones
“serias” comunmente nos viene a la
mente la utilizacion de una Talent
MSX en el ambito de la pequena y
mediana empresa, donde los sistemas
de contabilidad, sueldos y jomales,
stock, gestion de ventas, etc6tera
campean sin problemas.
El usuario que utiliza estas aplicacio-
nes suele ser un administrative que,
acostumbrado a usar calculadoras de
tira de papel, realiza sus ingresos
numericos en forma mas eficiente si
posee un teclado similar al de estos
equipos.
De allf la utilidad del teclado numeri-
co en la administracion y en planilla*s
de calculo.
Nota: En general la pregunta mas
realizada respecto al teclado numeri-
co es si es posible utilizarlo con el
MSX Plan o el Multiplan. La respues-
ta es no y si. No se puede usar con el
MSX Plan por una limitation que este
software posee respecto a instalar
rutinas extemas al mismo. Y sf, pues
el Multiplan trabaja en el MSXDOS y
las rutinas implementadas en el fun-
cionan sin problemas, ya sea en Mul-
tiplan, Wordstar.Calcstar, MBASIC,
Comodoro Rivadavia - Chubut
San Martin 263 - Local 22 - Tel.
(0967) 20794
Cbrdoba - Cbrdoba
9 dejulio 533 -Tel. (051)20083
Villa Marla - C6rdoba
Corrientes 1159 - 2do. piso - Tel.
(0535)24311
Concordia - Entre Rios
Urdinarrain 50 - Tel. (045) 213229
Parang - Entre Rios
Cordoba 67- Tel. (043) 225987
Mendoza -Mendoza
Rivadavia 76 - ler. piso - Tel. (061)
FORTRAN, COBOL, Turbo Pascal,
etcetera.
e) Interfase RS-232C
En general, se desconoce la aplica-
cion que puede tener este periferico
en el entomo MSX (o en cualquier
computadora). Su principal utilidad
es la de brindar un vinculo estandar
con otros perifericos o cualquier dis-
positivo que lo incorpore, incluyendo
obviamente las computadoras.
Entre otras posibilidades, una
RS232C permite interconectar su
MSX a una impresora, a un modem
(tipo Hayes compatible, que son los
que utilizan las computadoras PC),
equipos de distinto calibre (por ejem-
plo BaireSoft implemento un sistema
para administrar una bascula para
camiones de 60 tn a una empresa
contratista de SOMISA),etc6tera.
Realmente la mayor utilidad que se le
puede dar a una RS232C con la MSX
es trabajar como terminal de una
computadora (mayor). Por ejemplo,
con una PC AT trabajando en Xenix,
es muy facil utilizar un software
“emulador de terminal”. La MSX se
comporta como un teclado mas de
dicha computadora, con la ventaja de
ser una computadora en si misma. En
plaza no se ha aprovechado mucho
esta variante, pero realmente es algo
291348/293151 |
Viedma - Rio Negro
San Martin 24 - Tel. (0920) 21888 ||
Rosario - Santa Fe
Baron de Maua 1088 - Tel. (041) II
210747 §
Santa Fe - Santa Fe
Rivadavia 2553 - Loc.22 - Tel. (042) !§
41832 |
San Juan- San Juan
Santa Fe 409 Este
S.M.de Tucum^n - Tucum^n
Bolivar 374 - Tel. (081) 245007
muy interesante y economico para las
grandes instalaciones.
f) Mouse
Es uno de esos perifericos que estan
dirigidos a un mercado mas especlfi-
co: aquellos que utilizan sus compu-
tadoras en aplicaciones graficas o en
un entomo grafico al estilo Apple
Macintosh.
Para los que se mueven en este ambi-
to, un periferico como el mouse de
MSX es imprescindible para trabajar
con soltura. Es uno de los que los
yanquis denominan “pointing devi-
ce” (dispositivo puntero) y tiene apli-
cacion para dibujantes, grafistas, au-
toedicion, arquitectos, etcetera.
g) MiniLAN
En realidad la MiniLAN II configura
un conjunto de perifericos que unidos
permiten un mejor aprovechamiento
de una instalacion informatica, gene-
ralmente en el ambito educativo.
Dados los costos actuales del hardwa-
re, no es nada despreciable la posibi-
lidad deque hastalO consolas puedan
compartir una o dos disqueteras y,
opcionalmente, una impresora, con
muy pocas diferencias respecto a la
utilization directa de estos periferi-
cos.
En una nota posterior nos extendere-
mos sobre estos perifericos educacio-
nales, que permiten el acceso de todos
los alumnos a aplicaciones del
MSXDOS y MSX BASIC o LOGO,
incluyendo compiladores de otros
lenguajes como C, Turbo Pascal,
COBOL y FORTRAN.
TALENT MSX
EN MAR DEL HOP
Gracias a „„ accerdo ce.ebrado
entre Telematica S .A. y la production
del programa Mar del Hop! que con-
duce Raul Portal, los equipos Talent
MSX vuelven a los sets de television.
En un esfuerzo importante se han
facilitado en prestamo cerca de 9
equipos completos para su uso en el
programa.
El encargado de computation que
colabora con Raul Portal, Osvaldo
Esposito, nos comento que en el pri-
mer tramo del programa solo se utili-
zaron nuestros equipos en dos tareas:
el juego “Kenio”, que no es ni mas ni
menos que el viejo y querido Simon,
y el seguimiento de los numeros del
“Mambo”, version portalesca del
Bingo que utiliza modelos femeninos
como bolillas (j!).
Para cuando estas llneas ganen la
calle se incorporara el uso de la digi-
talizadora, que ya se encuentra en
venta para el publico. Se tomaran
“fotos digitalizadas” de los artistas
que suelen visitar el programa y luego
se les entregara una copia impresa
autografiada.
Por ultimo esta previsto ampliar el
“Kenio” con una interfase para mane-
jar siete luces de 220v en un tablero
que incorporara pulsadores.
No es la primera vez que Telematica
S.A. colabora con la television.
Hemos estado en programas como
“La hora de los juegos” en Canal 1 1 ,
“Magazine” con Silvia Martinez y
Luisa Delfino a principios del afio
pasado en ATC, “Onda Joven” en
Canal 11, y“TodoalNueve”en Canal
9, en donde las pantallas de preguntas
se manejan con equipos MSX.
CONTESTANDO A LA
Planillas
<;Cudl es la diferencia entre el MSX
Plan y el Multiplan para MSX? He
visto que son muy similares y que
pueden intercambiar planillas.
Respuesta
La diferencia principal es que el MSX
Plan es un subconjunto del Multiplan
y tiene algunas extensiones que per-
miten utilizarlo con casete. Por otra
parte, el MSX Plan viene en cartucho,
mientras que el Multiplan se consigue
en disquete. Algunas de las posibili-
dades que incorpora el Multiplan, y
que no vienen con el MSX Plan, son el
uso de planillas extemas (external),
ancho variable de las columnas, posi- «
bilidad de uso ventanas para dividir la
pantalla, ayuda en linea, etcetera. Por
otra parte, el MSX Plan es comercia-
lizado por Telematica S.A., lo que
implica la existencia de manual en
Castellano, cursos en los Centros de
Asistencia, etcetera.
Como conclusion, si ya tiene expe-
rience con el Multiplan y posee dis-
quetera, lo mas conveniente es usar el
Multiplan de MSX. En cambio si no
tiene disquetera,o no tiene experien-
ce en el uso de planillas de calculo, la
mejor opcion es usar el MSX Plan.ya
que permite el empleo de casetes y su
manejo es mucho mas sencillo que el
del Multiplan.
Procesadores de texto
iCudles son los procesadores de tex-
to existentes en el mercado para
MSX?
Respuesta
Los procesadores de texto existentes
en el mercado son los siguientes:
MSX1 y 2
MSX Write
Idea Text
MS Text
Tasword
HOT LINE
Wordstar (con 80 columnas)
MSX 2
Wordstar
Tasword II
Melbrane Notes
Philips Home Office 1 (paquete que
incluye un procesador de texto)
Philips Home Office 2 (paquete que
incluye un procesador de texto)
Philips Ease (paquete que incluye un
procesador de texto)y algunos mas .
Cobol
iQue compiladores COBOL hay dis-
ponibles para MSX? </ Viene alguno
en cartucho?
Respuesta
Los compiladores COBOL disponi-
bles para MSX vienen en disquete
unicamente y son 3 (los que conoce-
mos):
RM COBOL
Microsoft COBOL 80
Nevada COBOL (solo en MS X2 - CP/
M Plus)
SERVICE OFICIAL PARA TODO EL PAIS REPUESTOS
ORIGINALES PARA TODA LA LINEA CZY ZX
ASESORAMIENTO INTEGRAL (IBM - APPLE) EN SOFTWARE
HARDWARE Y TELEINFORMATICA
PRESUPUESTOS EN 48 hs . ENVIOS AL INTERIOR
ITUZAINGO 884 CAP. (1272) TE . 362-5876/361-4748 DELPHI : ANGEL
R O G
RITMOS
CLASE: Utilitario
AUTOR: Gonzalo Rodriguez Mir
Participd en el 4- Concurso de
programas
1 programa Simula el sonido de
una baterfa; puede programar dos rit-
mos distintos a la vez, con sus ondas
de sonido, y combinarlos.
Inicialmente las ondas estan progra-
madas simulando un redoblante, un
bombo y un charleston (representa-
dos respectivamente por los dibujos),
sin embargo las ondas de volumen y
tono del redoblante y del charleston
pueden programarse a voluntad, pues
son exactamente iguales en su trata-
miento. El sonido de bombo no puede
ser modificado y es el unico realizado
con el tono del PSG, los otros dos
estan hechos con ruido.
La variedad de sonidos que se logra
programando las ondas se puede
apreciar mucho mejor conectando la
salida de audio de la computadora a
un equipo de alta fidelidad.
El^programa puede ser util para aque-
llos musicos que deseen tocar o reali-
zar grabaciones con este tipo de
acompanamiento. Tambien puede
resultar interesante para quienes
quieran aprender a dominar los tiem-
pos en musica.
El programa carece de cualquier tipo
de efectos sonoros y tambien se ha
desactivado el sonido “clik” depulsa-
cion de teclado debido a que esto
resulta molesto cuando se trabaja con
volumen muy alto.
FUNCIONAMIENTO
En primer lugar se seleccionan las
longitudes de ambos ritmos con las
cuatro teclas de cursor. Si se quiere
hacer un ritmo de 3x4, se escogera 12,
para uno de 2x4 se pondra 8 o 16,
etcetera. Una vez elegidos, se presio-
na la barra espaciadora y se pasa a la
pantalla principal.
En esta pantalla se dibuja la estructura
del ritmo deseado moviendo el cursor
en las cuatro direcciones y oprimien-
do la barra para imprimir o borrar un
punto en el lugar correspondiente.
Presionando la tecla “ESC”, el cursor
pasa a la parte derecha de la pantalla.
Una vez ahf, si se mueve hacia arriba
o abajo, el cursor se desplaza, y hacia
la izquierda o derecha, se modifican
los numeros de repetition, velocidad
del ritmo y velocidad de las ondas.
A la derecha de cada ritmo figura la
cantidad de repeticiones del ritmo
correspondiente, y mas abajo la canti-
dad general, de repeticiones.
VELOCIDAD RITMO: Cuanto
menores el numero, mayor es la velo-
cidad con que se ejecuta.
VELOCIDAD ONDA: Similar a los
registros 11 y 12 del comando
SOUND. Cuanto menor es el nume-
ro, mas se “acorta” el sonido del gol-
pe.
Volviendoapresionarlatecla“ESC”,
el cursor vuelve a la parte de dibujo de
los ritmos.
Teclas de funcion:
• FI- EJEC: Se realiza automatica-
mente una introduction de 3 golpes
para marcar la entrada y a continua-
tion se ejecuta el ritmo, que puede ser
interrumpido con CTRL+STOP.
•F2- ONDAS: Se visualizan las ondas
de sonido. La de arriba es la de volu-
men, la de abajo de tono, y correspon-
den al sonido indicado por el dibujo.
Con las teclas hacia la izquierda y
derecha se desplaza el cursor. Hacia
arriba y abajo se modifica la onda en
el punto correspondiente. Con la ba-
rra espaciadora se pasa a la onda si-
guiente o vuelve a la pantalla princi-
pal.
•F3- INICIO: Vuelve al inicio (se
borran el ritmo y las ondas que hay en
memoria).
•F4- SAVE: Sealmacena en casete un
ritmo con sus valores y ondas. Prime-
ro se ingresa el nombre (hasta 6 carac-
teres) y luego se pulsa RETURN.
•F5- LOAD: Carga un ritmo previa-
mente grabado en casete.
CARGADOR BASIC
Se carga con CLOAD, despues de
teclear RUN, el programa tarda un
minuto aproximadamente hasta ter-
minar su ejecucion.
Para ejecutar el programa en codigo
maquina se debe teclear: DEFUSR=
&HD000: X= USR (0).
El listado del cargador basic tiene al
principio.para quienes quieran te-
Conlinua en pag . 22
Pag. 20
10 FOR A=0 TO 51
20 S=0:DI=&HD000+A*82:DF=DI+81
30 FOR N=DI TO DF : READ A$:POKE N
, VAL ( "&H " +A$ ) : S=S+PEEK ( N )
40 NEXT
50 READ T$
60 IF SOVAL( "&H"+T$> THEN BEEP:
PRINT “ ERROR EN LINEA" ; ( A*2+8 ) *
10; "O” ; (A*2+9)*10
70 NEXT
80 DATA 3E, 00, 32, DB, F3, CD, CC, 00,
OE, 01, 06, E2, CD, 47, 00, 3E, 01, 32, 7F
, F8, 3E, 00, 32, 80, F8, 3E, 05, 32, 8F, F
8, 3E, 00, 32, 90, F8, 3E, 02, 32, 9F, F8,
3E, 00, 32, AO, F8, 3E, 06, 32, AF, F8, 3E
, 00, 32, BO, F8, 3E, 04, 32, BF, F8, 3E, 0
0, 32, CO, F8, 21, 00, 38, 3E, 00, CD, 4D,
00, 23, 3E, 00, CD, 4D, 00, 23, 3E, 00
90 DATA 1DCC
100 DATA CD, 4D,00,23,3E,00, CD, 4D
, 00, 23, 3E, OF, CD, 4D, 00, 23, 3E, 30, C
D, 4D, 00, 23, 3E, CO, CD, 4D, 00, 23, 3E,
BO, CD, 4D, 00, 23, 3E, AF, CD, 4D, 00, 23
, 3E, Al, CD, 4D, 00, 23, 3E, Al, CD, 4D, 0
0, 23, 3E, 81, CD, 4D, 00, 23, 3E, 80, CD,
4D, 00, 23, 3E, 70, CD, 4D, 00, 23, 3E, OF
, CD, 4D, 00, 23, 3E, 00, CD, 4D, 00, 23
110 DATA 199C
120 DATA 3E, 00, CD, 4D, 00, 23, 3E, 00
, CD, 4D, 00, 23, 3E, 00, CD, 4D, 00, 23,3
E, 00, CD, 4D, 00, 23, 3E, EO, CD, 4D, 00,
23, 3E, 18, CD, 4D, 00, 23, 3E, 06, CD, 4D
, 00, 23, 3E, 1A, CD, 4D, 00, 23, 3E, EA, C
D, 4D, 00, 23, 3E, OA, CD, 4D, 00, 23, 3E,
OA, CD, 4D, 00, 23, 3E, 02, CD, 4D, 00, 23
, 3E, 02, CD, 4D, 00, 23, 3E, 1C, CD, 4D
130 DATA 18CD
140 DATA 00, 23, 3E, EO, CD, 4D, 00, 23
, 3E, 00, CD, 4D, 00, 23, 3E, 00, CD, 4D, 0
0, 23, 3E, 01 , CD, 4D, 00, 23, 3E, OF, CD,
4D, 00, 23, 3E, 10, CD, 4D, 00, 23, 3E, 20
, CD, 4D, 00, 23, 3E, 40, CD, 4D, 00, 23, 3
E, 40, CD, 4D, 00, 23, 3E, 80, CD, 4D, 00,
23, 3E, 80, CD, 4D, 00, 23, 3E, 80, CD, 4D
, 00, 23, 3E, 80, CD, 4D, 00, 23, 3E, 40
150 DATA 1780
160 DATA CD, 4D, 00, 23, 3E, 40, CD, 4D
, 00, 23, 3E, 20, CD, 4D, 00, 23, 3E, 10, C
D, 4D, 00, 23, 3E, OF, CD, 4D. 00, 23, 3E,
00, CD, 4D, 00, 23, 3E, CO, CD, 4D, 00, 23
, 3E, 20, CD, 4D, 00, 23, 3E, 90, CD, 4D, 0
0, 23, 3E, 48, CD, 4D, 00, 23, 3E, 1C, CD,
4D, 00, 23, 3E, 24, CD, 4D, 00, 23, 3E, 14
, CD, 4D, 00, 23, 3E, 14, CD, 4D, 00, 23
170 DATA 17 IB
180 DATA 3E, 14, CD, 4D, 00, 23, 3E, 14
, CD, 4D, 00, 23, 3E, 28, CD, 4D, 00, 23, 3
E, 28, CD, 4D, 00, 23, 3E, 50, CD, 4D, 00,
23, 3E, AO, CD, 4D, 00, 23, 3E, 00, CD, 4D
, 00, 23, 3E, 00, CD, 4D, 00, 23, 3E, 00, C
D, 4D, 00, 23, 3E, 01, CD, 4D, 00, 23, 3E,
01, CD, 4D, 00, 23, 3E, 07, CD, 4D, 00, 23
, 3E, 18, CD, 4D, 00, 23, 3E, FF, CD, 4D
190 DATA 171F
200 DATA 00, 23, 3E, 30, CD, 4D, 00, 23
, 3E, OF, CD, 4D, 00, 23, 3E, 03, CD, 4D, 0
0, 23, 3E, 01, CD, 4D, 00, 23, 3E, 01, CD,
4D, 00, 23, 3E. 01, CD, 4D, 00, 23, 3E, 01
, CD, 4D, 00, 23, 3E, 01, CD, 4D, 00, 23, 3
E, 01, CD, 4D, 00, 23, 23, 23, 23, 23, 3E,
CO, CD, 4D, 00, 23, 3E, 30, CD, 4D, 00, 23
, 3E, FE, CD, 4D, 00, 23, 3E, 18, CD, 4D
210 DATA 1619
220 DATA 00, 23, 3E, EO, CD, 4D, 00, 23
, 3E, 80, CD, 4D, 00, 21, 60, 38, 3E, C6, C
D, 4D, 00, 23, 3E, 82, CD, 4D, 00, 21, 66,
38, 3E, 82, CD, 4D, 00, 23, 3E, C6, CD, 4D
, 00, 21, EO, 38, 3E, 18, CD, 4D, 00, 23, 3
E, 24, CD, 4D, 00, 23, 3E, 42, CD, 4D, 00,
3E, OF, 32, E9, F3, 3E, 04, 32, EA, F3, 3E
, 04, 32, EB, F3, CD, 82, 00, 3E. 01, 32
230 DATA 1CA7
240 DATA AF, FC, CD, 5F, 00, 06, 07, 3E
, Dl, 21, 00, IB, CD, 4D, 00, 23, 23, 23, 2
3, 10, F7, 21, 00, CO, 06, 60, 23, 36, C8,
10, FB, 26 , 01 , 2E , 08 , CD, C6 , 00, 2 1 , 1 1
, DA, CD. OA, DA, 26 , 01 , 2E, OA, CD, C6 , 0
0, 21, 29, DA, CD, OA, DA, 3E, 08, 32, 00,
CO, 32, FF, BF, 3E, 48, 32, 62, CO, 3A, FF
, BF, CD, C7, D9, 3E, 38, 32, 62, CO, 3A
250 DATA 1F2E
260 DATA 00, CO, CD, C7, D9, 21, 00, IB
, 3E, 37, CD, 4D, 00, 23, 3E, C4, CD, 4D, 0
0, 23, 3E, OC, CD, 4D, 00, 23, 3E, 01, CD,
4D, 00, 3E, 38, 32, 62, CO, 21, 00, IB, 3E
, 37, CD, 4D, 00, 3E, 02, 32, AF, FC, CD, 9
F, 00, F5, 3E, 01, 32, AF, FC, FI, IE, 20,
BB, CA, Bl, D3, IE, 1C, BB. 28, OC, IE, ID
, BB, 28, 18, IE, IF, BB, 28, 27, 18, CD
270 DATA 1D2C
280 DATA 3A, FF, BF, IE, 10, BB, 28, C5
, 3C, 32, FF, BF, CD, C7, D9, 18, BC, 3A, F
F, BF, IE, 02, BB, 28, B4, 3D, 32, FF, BF,
3A, FF, BF, CD, C7, D9, 18, A8, 3E, 48, 32
, 62, CO, 21, 00, IB, 3E, 47, CD, 4D, 00, 3
E, 02,32, AF, FC, CD, 9F, 00, F5, 3E, 01,
32, AF, FC, FI, IE, 20, BB, 28, 37, IE, 1C
, BB, 28, OD, IE, ID, BB, 28, 19, IE, IE
oort T1ATA 9^71 a
300 DATA BB, CA, 01, D3, 18, CD, 3A, 00
, CO, IE, 10, BB, 28, C5, 3C, 32,00, CO, C
D, C7, D9, 18, BC, 3A, 00, CO, IE, 02, BB,
28, B4, 3D, 32, 00, CO, 3A, 00, CO, CD, C7
, D9, 18, A8, 3E, 01, 32, 64, CO, 32, EB, C
0, 3E, 32, 32, 66, CO, 32, EC, CO, 3E, 00,
32, 65, CO, 21, 67, CO, 06, OF, 70, 23, 10
,FC, 06, 11,36,00,23, 10, FB, 06, 20
310 DATA 1FCE
320 DATA 36, 17,23, 10, FB, 06, 08, 70
, 23, 10, FC, 06, 18, 36, 00, 23, 10, FB, 0
6, 20, 36, IE, 23, 10, FB, 3E, OF, 32, E9,
F3, CD, 62, 00, 3E, 01, 32, AF, FC, CD, 5F
, 00, 21, 40, 06, 3E, 10, CD, 4D, 00, 23, 3
E, 10, CD, 4D, 00, 23, 3E, 10, CD, 4D, 00,
23, 3E, 10, CD, 4D, 00, 23, 3E, 10, CD, 4D
, 00, 23, 3E, 10, CD, 4D, 00, 23, 3E, 10
330 DATA 17 IB
340 DATA CD, 4D, 00, 23, 3E, 10, CD, 4D
, 00, 23, 3E, 10, CD, 4D, 00, 23, 3E, 10, C
D, 4D, 00, 23, 3E, 38, CD, 4D, 00, 23, 3E,
7C, CD, 4D, 00, 23, 3E, 7C, CD, 4D, 00, 23
, 3E, 38, CD, 4D, 00, 23, 3E, 10, CD, 4D, 0
0, 23, 3E, 10, CD, 4D, 00, 21, 19, 20, 3E,
IF, CD, 4D, 00, 21, 00, IB, 3E, 1A, CD, 4D
, 00, 23, 3E, OA, CD, 4D, 00, 23, 3E, 00
350 DATA 158A
360 DATA CD, 4D, 00, 23, 3E, OF, CD, 4D
, 00, 23, 3E, 2A, CD, 4D, 00, 23, 3E, OA, C
D, 4D, 00, 23, 3E, 04, CD, 4D, 00, 23, 3E,
OF, CD, 4D, 00, 23, 3E, 3A, CD, 4D, 00, 23
, 3E, OA, CD, 4D, 00, 23, 3E, 08, CD, 4D, 0
0, 23, 3E, OF, CD, 4D, 00, 23, 3E, 52, CD,
4D, 00, 23, 3E, OA, CD, 4D, 00, 23, 3E, 00
, CD, 4D, 00, 23, 3E, OF, CD, 4D, 00, 23
370 DATA 1598
380 DATA 3E,62,CD,4D, 00,23, 3E,0A
, CD, 4D, 00, 23, 3E, 04, CD, 4D, 00, 23, 3
E, OF, CD, 4D, 00, 23, 3E, 72, CD, 4D, 00,
23, 3E, OA, CD, 4D, 00, 23, 3E, 08, CD, 4D
, 00, 23, 3E, OF, CD, 4D, 00, 23, 3E, IF, C
D, 4D, 00, 23, 3E, 20, CD, 4D, 00, 23, 3E,
OC, CD, 4D, 00, 23, 3E, 01 , CD, 4D, 00, 3A
, FF, BF, CB, 27, CB, 27, CB, 27, C6, 18
390 DATA 18AB
400 DATA 32, 63, CO, 3A, 00, CO, CB, 27
, CB, 27, CB, 27, C6, 18, 32, ED, CO, 26, 0
3, 2E, 05, CD, C6, 00, 3A, FF, BF, 47, 21,
00, CO, 23, 7E, DF, 10, FB, 26, 03, 2E, 07
, CD, C6, 00, 3A, FF, BF, 47, 21, 10, CO, 2
3, 7E, DF, 10, FB, 26,03, 2E, 09, CD, C6,
00, 3A, FF, BF, 47,21, 20, CO, 23, 7E, DF
, 10, FB, 26, 03, 2E, OC, CD, C6, 00, 3A
410 DATA 2116
420 DATA 00, CO, 47, 21, 30, CO, 23, 7E
, DF, 10, FB, 26, 03, 2E, OE, CD, C6, 00, 3
A, 00, CO, 47, 21, 40. CO, 23, 7E, DF, 10,
FB, 26, 03, 2E, 10, CD, C6, 00, 3A, 00, CO
, 47, 21, 50, CO, 23, 7E, DF, 10, FB, 21, D
6, 18, 3E, C8, CD, 4D, 00, 21, B6, 19, 3E,
C8, CD, 4D, 00, 21, 36, 1A, 3E, C8, CD, 4D
, 00, 21, 76, 1A, 3E, C8, CD, 4D, 00, 21
430 DATA 1E41
440 DATA B6, 1A, 3E, C8.CD, 4D, 00, 26
, 14, 2E, 03, CD, C6, 00, 21, 41, DA, CD, 0
A, DA, 26, 01, 2E, 12, CD, C6, 00, 21, 4A,
DA, CD, OA, DA, 26, 01, 2E, 14, CD, C6, 00
, 21, 6D, DA, CD, OA, DA, 26, 01, 2E, 16, C
D, C6, 00, 21, 5A, DA, CD, OA, DA, 26, 01,
2E, 13, CD, C6, 00, 21, 81, DA, CD, OA, DA
, 26, 01, 2E, 15, CD, C6, 00, 21, 89, DA
450 DATA 1F8D
460 DATA CD, OA, DA, 3E, 30, 32, 62, CO
, 3A, 64, CO, CD, C7, D9, 3E, 68, 32, 62, C
0, 3A, 65, CO, CD, C7, D9, 3E, 88, 32, 62,
CO, 3A, EB, CO, CD, C7, D9, 3E, 98,32, 62
, CO, 3A, 66, CO, CD, C7, D9, 3E, A8, 32, 6
2, CO, 3A, EC, CO, CD, C7, D9, 3E, 20, 32,
61, CO, 3E, 20, 32, 62, CO, 3E, 07, IE, FF
, CD, 93, 00, 3E, 02, 32, AF, FC, CD, 9F
470 DATA 29A2
480 DATA 00, F5, 3E, 01 , 32, AF, FC, FI
, 67, 3E, 06, BC, CA, BA, DF, 3E, 04, BC, C
A, 3E, EO, 3E, 01, BC, CA, BO, DD, 3E, 05,
BC, CA, 91, DA, 3E, 02, BC, CA, 7B, D2, 3E
, 20, BC, C2, 21, D7, 3A, 61, CO, 47, 3E, 9
8, B8, 38, BC, 21, 00, 00, 3A, 62, CO, 6F,
CB, 25, CB, 14, CB, 25, CB, 14, E5, 01, 00
, 00, 3A, 61, CO, 4F, CB, 39, CB, 39, CB
490 DATA 2630
500 DATA 39, El, 09, 01, 00, 18, 09, CD
, 4A, 00, 47, 3E, C8, B8, 28, 04, 3E, C8, 1
8, 02, 3E, C9, F5, CD, 4D, 00, 3A, 62, CO,
5F, 3E, 20, BB, 20, 05, 21, 01, CO, 18, 2B
, 3E, 30, BB, 20,05,21, 11, CO, 18, 21, 3
E, 40, BB, 20, 05, 21, 21, CO, 18, 17, 3E,
58, BB, 20, 05, 21, 31, CO, 18, OD, 3E, 68
,BB, 20, 05, 21, 41, CO, 18,03,21,51
510 DATA 17CB
520 DATA CO, 3A, 61 , CO, CB, 3F, CB, 3F
, CB, 3F, D6, 04, 4F, 06, 00, 09, FI, 77, C
3, 5A, D6, 3E, IB, BC, 20, 21 , 3A, 61 , CO,
47, 3E, BO, B8, 28, OD, 3E, BO, 32, 61, CO
, 3E, 30, 32,62, CO, C3, 4E, D8, 3E, 20, 3
2, 61, CO, 32, 62, CO, C3, 4E, D8, 3A, 61,
CO, 47, 3E, BO, B8, CA, 62, D8, 3E, IE, BC
, 20, 4C, 3A, 62, CO, 47, 3E, 20, B8, 20
530 DATA 2322 ,
540 DATA 19, 3A, 61, CO, 47, 3A, ED, CO
, B8, D2, 70, D7, 3A, ED, CO, 32, 61, CO, 3
E, 78, 32, 62, CO, C3, 4E, D8, 3E, 58, B8,
20, 19, 3A, 61, CO, 47, 3A, 63, CO, B8, D2
, 8E, D7, 3A, 63, CO, 32, 61, CO, 3E, 40, 3
2, 62, CO, C3, 4E, D8, 3A, 62, CO, OE, 10,
91, 32, 62, CO, C3, 4E, D8, 3E, IF, BC, 20
, 49, 3A, 62, CO, 47, 3E, 78, B8, 20, 19
550 DATA 2594
560 DATA 3A, 61, CO, 47, 3A, 63, CO, B8
, D2, Cl, D7, 3A, 63, CO, 32, 61, CO, 3E, 2
0, 32, 62, CO, C3, 4E, D8, 3E, 40, B8, 20,
18, 3A, 61, CO, 47, 3A, ED, CO, B8, D2, DF
, D7, 3A, ED, CO, 32, 61, CO, 3E, 58,32, 6
2, CO, 18, 68, 3A, 62, CO, C6, 10,32,62,
CO, 18, 5E, 3E, ID, BC, 20, 2A, 3A, 61 , CO
, 47, 3E, 20, B8, 20, 15, 3A, 62, CO, IE
570 DATA 240B
clearlo, una rutina que detecta en que
numero de lfnea hay error .
Es importante grabarlo antes de eje-
580 DATA 4B, BB, 30, 05, 3A, 63, CO, 18
, 03, 3A, ED, CO, 32, 61, CO, 18, 3B. 3A, 6
1, CO, OE, 08, 91, 32, 61, CO, C3, 4E, D8,
3E, 1C, BC, C2, 5A, D6, 3A, 81. CO, 47, 3A
,62, CO, IE, 4B,BB, 30, 05, 21, 63, CO, 1
8, 03, 21, ED, CO, 7E, B8, 20, 07, 3E, 26,
32, 61, CO, 18, OA, 3A, 61, CO, C6, 08, 32
, 61, CO, 18, 00, 21, 18, IB, 3A, 62, CO
590 DATA 1E7E
600 DATA 3D, CD, 4D, 00, 23, 3A, 61, CO
, CD, 4D, 00, C3, 5A, D6, 3E, IE, BC, 20, 3
0, 3A, 62, CO, 47, 3E, 30, B8, 20, 07, 3E,
A8, 32, 62, CO, 18, D7, 3A, 62, CO, IE, 68
, BB, 20, 04, OE, 38, 18, OB, IE, 88, BB, 2
0, 04, OE, 20, 18, 02, OE, 10, 3A, 82, CO,
99, 32, 62, CO, 18, B7, 3E, IF, BC, 20, 30
, 3A, 62, CO, 47, 3E, A8, B8, 20, 07, 3E
610 DATA 1B9F
620 DATA 30, 32, 62, CO, 18, A2, 3A, 62
, CO, IE, 30, BB, 20, 04, OE, 38, 18, OB, 1
E, 68, BB, 20, 04, OE, 20, 18, 02, OE, 10,
3A, 62, CO, 81, 32, 62, CO, 18, 82, 3E, 1C
, BC, 20, 78, 3A, 62, CO, IE, 30, BB, 28, 1
1, IE, 68, BB, 28, IF, IE, 88, BB, 28, 2D,
IE, 98, BB, 28, 3B, 18, 4C, 3A, 64, CO, 06
, 63, B8, CA, 5A, D6, 3C, 32, 64, CO, CD
630 DATA 1B60
640 DATA C7, D9, C3, 5A, D6, 3A, 65, CO
, 06, 63, B8, CA, 5A, D6, 3C, 32, 65, CO, C
D, C7, D9, C3, 5A, D6, 3A, EB, CO, 06, 63,
B8, CA, 5A, D6, 3C, 32, EB, CO, CD, C7, D9
, C3, 5A, D6, 3A, 66, CO, 06, 63, B8, CA, 5
A, D6, 3C, 32, 66, CO, CD, C7, D9, C3, 5A,
D6, 3A, EC, CO, 06, 63, B8, CA, 5A, D6, 3C
, 32, EC, CO, CD, C7, D9, C3, 5A, D6, 3E
650 DATA 2FA1
660 DATA ID, BC, C2, 5A, D6, 3A, 62, CO
, IE, 30, BB, 28, 11, IE, 68, BB, 28, IF, 1
E, 88, BB, 28, 2D, IE, 98, BB, 28, 3B, 18,
4C, 3A, 64, CO, 06, 01, B8, CA, 5A, D6, 3D
, 32, 64, CO, CD, C7, D9, C3, 5A, D6, 3A, 6
5, CO, 08, 00, B8, CA, 5A, D6, 3D, 32, 65,
CO, CD, C7, D9, C3, 5A, D8, 3A, EB, CO, 06
, 01, B8, CA, 5A, D6, 3D, 32, EB, CO, CD
670 DATA 2679
680 DATA C7, D9, C3, 5A, D6, 3A, 66, CO
, 06, 01, B8, CA, 5A, D6, 3D, 32, 66, CO, C
D, C7, D9, C3, 5A, D6, 3A, EC, CO, 06, 01,
B8, CA, 5A, D6, 3D, 32, EC, CO, CD, C7, D9
, C3, 5A, D6, F5, 3A, 62, CO, CB, 3F, CB, 3
F, CB, 3F, 3C, 6F, 28, 19, CD, C6, 00, FI,
6F, 3E, 00, 26, 00, OE, OA, 08, 08, CB, 25
, 17, B9, F5, 3F, CB, 14, FI, 38, 01, 91
690 DATA 28 IF
700 DATA 10, F2, F5, 3E, 30, 84, DF, 3A
, 62, CO, CB, 3F, CB, 3F, CB, 3F, 3C* 8F, 2
6, 1A, CD, C6, 00, FI, C6, 30, DF, CO, 7E,
23, DF, B7, 20, FA, C9, 4C, 4F, 4E, 47, 49
, 54, 55, 44, 20, 43, 4F, 4D, 50, 41, 53, 2
D, 52, 49, 54, 4D, 4F, 31, 20, 00, 4C, 4F,
4E, 47, 49, 54, 55, 44, 20, 43, 4F, 4D, 50
, 41, 53, 2D, 52, 49, 54, 4D, 4F, 32, 20
710 DATA 1F0E
720 DATA 00,52,45,50,45,54,49,43
, 2E, 00, 46, 31, 2D, 45, 6A, 65, 63, 20, 2
0, 20, 54, 4F, 54, 41, 4C, 00, 46, 35, 2D,
4C, 6F, 61,64, 20, 20, 20, 58, 45, 4C, 2E
, 4F, 4E, 44, 41, 00, 46, 33, 2D, 49, 6E, 6
9, 63, 20, 20, 20, 58, 45, 4C, 2E, 52, 49,
54, 4D, 4F, 00, 46, 32, 2D, 4F, 6E, 64, 61
, 00, 46, 34, 2D, 53, 61, 76, 65, 00, 06
730 DATA 1484
740 DATA 07, 3E, Dl, 21, 00, IB, CD, 4D
, 00, 23, 23, 23, 23, 10, F7, 3E, 01, 32, E
7, CO, 3E, 01, 32, E9, F3, CD, 62, 00, 3E,
02, 32, AF, FC, CD, 5F, 00, CD, C3, 00, 21
, 00, IB, 3E, Dl, CD, 4D, 00, 3E, 07, 32, F
2, F3, 21, FF, FF, 23, E5, 11,45,00, 19,
44, 4D, 11, 00, 00, CD, 11, 01, CD, 20, 01
, 06, BD, CD, 08, 01, CD, 20, 01, 10, F8
750 DATA 1CC1
cutarlo. El programa en codigo
maquina se graba con BSAVE,
“CAS: RITMOS”, &HD000,
760 DATA El, 3E, 01, BD, 20, DF, 11, 40
, 00, 01, 45, 00, CD, 11, 01, CD, 20, 01, 0
6, 84, CD, FC, 00, CD, 20, 01, 10, F8, 21,
FF, FF, 11, BD, 00, 01, 45, 00, CD, 11,01
, CD, 20, 01, 06, 84, CD, FC, 00, CD, 20, 0
1, 10, F8, 3E, 47, 32, 61, CO, 3E, 3D, 32,
62, CO, 21, 1C, IB, 3E, 3F, CD, 4D, 00, 23
, 3E, 48, CD, 4D, 00, 23, 3E, 1C, CD, 4D
770 DATA 1BC0
780 DATA 00, 23, 3E, OF, CD, 4D, 00, 21
, 03, IB, 3A, E7, CO, IE, 01, BB, 28, 03, 2
1, OB, IB, 3E, OF, CD, 4D, 00, 2B, 2B, 3E,
20, CD, 4D, 00, 2B, 3E, 32, CD, 4D, 00, 3E
, 1C, 32, B7, FC, 3E, 1C, 32, B9, FC, 3E, 5
6, CD, 8D, 00, 3E, 4F, CD, 8D, 00, 3E, 4C,
CD, 8D, 00, 3E, 2E, CD, 8D, 00, 3E, 1C, 32
, B7, FC, 3E, 6E, 32, B9, FC, 3E, 54, CD
790 DATA 1C10
800 DATA 8D, 00, 3E, 4F, CD, 8D, 00, 3E
, 4E, CD, 8D, 00, 3E, 4F, CD, 8D, 00, 21, 8
7, CO, 3A, E7, CO, IE, 01, BB, 28, 03,21,
A7, CO, 06, 20, C5, 7E, E5, 21, 20, 00, 48
, 06, 00, ED, 42, CB, 25, CB, 25, 11, 48, 0
0, 19, CB, 27, CB, 27, 2F, CE, 3D, 44, 4D,
5F, 16, 00, CD, 2 A, DD, El, 23, Cl, 10, D9
, 06, 20, C5, 7E, E5, 21, 20, 00, 48, 06
810 DATA 1DD8
820 DATA 00, ED, 42, CB, 25, CB, 25, 11
, 48, 00, 19, CB, 27, CB, 27, 2F, CE, BA, 4
4, 4D, 5F, 16, 00, CD, 2A, DD, El, 23, Cl,
10, D9, CD, 9F, 00, 67, 3E, 20, BC, 20, 23
, 3A, 62, CO, IE, 3D, BB, 20, OA, 3E, BA, 1
E, 01, 32, 62, CO, C3, 14, DD, 3A, E7, CO,
IE, 01, BB, C2, FI, D3, 3E, 02, 32, E7, CO
, C3, B6, DA, 3E, ID, BC, 20, ID, 3A, 61
830 DATA 222B
840 DATA CO, 47, 3E, 47, B8, 20, 08, 3E
, C3, 32, 61, CO, C3, 14, DD, 3A, 61, CO, 0
E, 04, 91, 32, 61, CO, C3, 14, DD, 3E, 1C,
BC, 20, 1C, 3A, 61, CO, 47, 3E, C3, B8, 20
, 08, 3E, 47. 32, 61, CO, C3, 14, DD, 3A, 6
1, CO, C6, 04, 32, 61, CO, C3, 14, DD, 3E,
IE, BC, 20, 07, 3E, F9, 32, EE, CO, 18, OB
, 3E, IF, BC, C2, F9, DB, 3E, 01, 32, EE
850 DATA 228D
860 DATA CO, 21, 67, CO, 3A, E7, CO, IE
, 01, BB, 28, 03, 21, A7, CO, 3A, 62, CO, 1
E, 3D, BB, 28, 04, 11, 20, 00, 19, 3A, 61,
CO, CB, 3F, CB, 3F, D6, 11, 4F, 06, 00, 09
, E5, 3A, EE, CO, IE, F9, BB, 28, OA, 7E, 1
E, 00, BB, 20, 19, El, C3, F9, DB, 16, IE,
3A, 62, CO, IE, 3D, BB, 20, 02, 16, OF, 7E
, 5A, BB, 20, 04, El, C3, F9, DB, 7E, CB
870 DATA 2150
880 DATA 27, CB, 27, 2F, 3C, 3C, F5, 3A
, 62, CO, 4F, FI, 89, 3D, 3D, 5F, 16, 00, 3
A, 61, CO, 3C, 4F, 06, 00, CD, 58, DD, El,
7E, F5, 3A, EE, CO, IE, F9, BB, 20, 04, FI
, 3C, 18, 02, FI, 3D; 77, 2A, E9, CO, 26, 0
0, ED, 4B, EE, CO, 09, 54, 5D, ED, 4B, E8,
CO, CD, 2A, DD, C3, F9, DB, 21, 1C, IB, 3A
, 62, CO, C6, 02, CD, 4D, 00, 23, 3A, 61
890 DATA 250D
900 DATA CO, 3D, CD, 4D, 00, C3, F9, DB
, ED, 43, E8, CO, ED, 53, E9, CO, 06, 04, C
5, ED, 4B, E8, CO, 06, 00, CD, 11, 01, CD,
20, 01, CD, FC, 00, CD, 20, 01, CD, FC, 00
, CD, 20, 01, CD, FC, 00, CD, 20, 01, Cl, 1
3, 10, DD, C9, ED, 43, E8, CO, ED, 53, E9,
CO, 06, 04, C5, ED, 53, E9, CO, ED, 4B, E8
, CO, 06, 00, CD, 11, 01, CD, 4A, 00, 2F
910 DATA 2924
920 DATA CD, 4D, 00, ED, 4B, E8, CO, ED
, 5B, E9, CO, 06, 00, 16, 00, CD, 11,01,C
D, 20, 01, CD, FC, 00, CD, 20, 01, CD, FC,
00, CD, 20, 01, CD, FC, 00, CD, 20, 01, CD
, 11, 01, CD, 4A, 00, CD, 11, 01, CD, 4A, 0
0, 2F, CD, 4D, 00, Cl, 13, 10, B3, C9, 3E,
07, IE, EE, CD, 93, 00, 3E, 01, 32, FO, CO
, 32, F3, CQ, 32, F2, CO, 3E, 00, 32, FI
930 DATA 228A
&HE098, y se carga con BLOAD
“CAS:”, R.
940 DATA CO, 3A, FF, BF, 2E, 10, BD, C2
, D5, DD, 3E, 04, C3, E2, DD, 2E, OC, BD, C
2, EO, DD, 3E, 03, C3, E2, DD, 3E, 02, 4F,
3E, 09, IE, 10, CD, 93, 00, 3E, 06, IE, 00
. CD. 93, 00, 3E, OC, IE, 00, CD, 93, 00, 3
E, OB, IE, IE, CD, 93, 00, 3E, 08, IE, 00,
CD, 93, 00, 3E, 00, F5, 3E, OD, IE, 00, CD
, 93, 00, 41, 3E, 00, 32, 9E, FC, 3A, 86
950 DATA 1EA2
.960 DATA CO, CB, 3F, CB, 3F, 6F, 3A, 9E
, FC, BD, DA, IE, DE, 10, EA, FI, 3C, F5, 1
E, 03, BB, C2, 09, DE, CD, B7, 00, DA, 5A,
D6, 21, FF, BF, 3A, FO, CO, IE. 01, BB, 28
, 03, 21, 00, CO, 7E, 5F, 3A, FI, CO, BB, 2
8, 06, 3C, 32, FI, CO, 18, 52, 3E, 01, 32,
FI , CO, 3A, FO, CO, IE, 01, BB, 20, 1C, 3A
, 64. CO, 5F, 3A, F3, CO, BB, 28, 08, 3C
970 DATA 26B3
980 DATA 32, F3, CO, 18,35, 3E, 02, 32
, FO, CO, 3E, 00, 32, F3, CO, 18, DC, 3A, 6
5, CO, 5F, 3A, F3, CO, BB, 28, 06, 3C, 32,
F3.C0, 18, 19, 3E, 01, 32, FO, CO, 3E, 01
, 32, F3, CO, 3A, EB, CO, 5F, 3A, F2, CO, B
B, CA, 5A, D6, 3C, 32, F2, CO, 3E, 00, 32;
9E, FC, 21, 10, CO, 3A, FO, CO, IE, 01, BB
, 28, 03, 21, 40, CO, 3A, FI, CO, 5F, 16
990 DATA 2506
1000 DATAOO, 19, 7E, IE, C8, BB, 28, 1C
, 3E, 01, IE, OF, CD, 93, 00, 3E, 08, IE, 1
0, CD, 93, 00, 3E, OC, IE, 04, CD, 93, 00,
3E, OD. IE, 00, CD, 93, 00. 7D, D6. 10, 6F
, 16, 00, 7E, IE, C8, BB, CA, EF, DE, 16, 0
1, 7A, 32, F4, CO, 7D, C6, 20, 6F, 16, 00,
7E, IE, C6, BB, CA, 02, DF, 16, 01, 7A, 32
, F5, CO, 3E, 00, 32, FA, CO, 3A, FA, CO
1010 DATA 1F0E
1020 DATA3C, 32, FA, CO, 3E, 00, 32, F6
, CO, 32, F7, CO, 3A, F4, CO, IE, 01, BB, 2
0, 14, 21, 66, CO, 3A, FA, CO, 85, 6F, 7E,
32, F6, CO, 7D, C6, 20, 6F, 7E, 32, F7, CO
, 3A, F5, CO, IE, 01, BB, 20, ID, 21. A6, C
0, 3A, FA, CO, 85, 6F, 7E, 5F, 3A, F6, CO,
BB, D2, 5B, DF, 7B, 32, F6, CO, 7D, C6, 20
, 6F, 7E, 32, F7, CO, 3A, F7, CO, 5F, 3E
1030 DATA 2A34
1040 DATA1E, 93, 32, F7, CO, 3A, F7, CO
, 5F, 3E, 06, CD, 93, 00, 3A, F6, CO, 5F, 3
E, 09, CD, 93, 00, 3A, EC, CO, 16, 00, 5F,
06, 03, CB, 23, CB, 12, 10, FA, 21, 00, 00
, 3A, 66, CO, CB, 3F, CB, 3F, 47, 3A, 9E, F
C, B8, D2, 30, DE, 23, CD, 20, 00, 28, 02,
18, FI, 3A, FA, CO, 4F, 3E, 20, B9, C2, OB
, DF, 3A, 88, CO, CB, 3F, CB, 3F, 47, 3A
1050 DATA 2343
1080 DATA9E, FC, B8, D2, 30, DE, 18, F7
, 21, F9, BF, 06, 06, 36, 20, 23, 10, FB, 2
6, 01, 2E, 01, CD, C6, 00, 21,91, EO, CD,
OA, DA, 21, F9, BF, 06, 06, 3E, 02, 32, AF
, FC, CD, 9F, 00, F5, 3E, 01, 32, AF, FC, F
1, IE, OD, BB, CA, OB, EO, IE, 20, BB, DA,
D6, DF, 77, DF, 23, 10, EO, 3E, 02, 32, AF
, FC, CD, 9F, 00, F5, 3E, 01, 32, AF, FC
1070 DATA 286C
1080 DATAF1 , IE, OD, BB', C2 , F6, DF, 3E
, 00, CD, EA, 00, 21, F9, BF, 06, 08, C5, E
5, 7E, CD, ED, 00, El, Cl, 23, 10, F5, CD,
FO, 00, 3E, 00, CD, EA, 00, 21, FF, BF, 06
, EE, C5, E5, 7E, CD, ED, 00, El, Cl, 23, 1
0, F5, CD, FO, 00, C3, FI, D3, 3E, 07, IE,
B8, CD, 93, 00, CD, El, 00, 21, F9, BF, 06
, 06, C5, E5, CD, E4, 00, DA, 7B, D2, El
1090 DATA 2 CD A
1100 DATAC1, 77, 23, 10, F2, CD, E7, 00
, 26, 01, 2E, 01, CD, C8, 00, 21, 91, EO, C
D, OA, DA, 06, 06,21, F9, BF, 7E, DF, 23,
10, FB, CD, El, 00, 21, FF, BF, 06, EE, C5
, E5, CD, E4, 00, DA, 7B, D2, El, Cl, 77. 2
3, 10, F2, CD, E7, 00, C3, FI, D3, 4E, 4F,
4D, 42, 52, 45, 3A, 00, 00, 00, 00, 00, 00
, 00, 00, 00, 00, 00, 00, 00, 00, 00, 00
1110 DATA 2126
a
eleccion entre
IDEA BASE , IDEA TEXT, o
BASIC TUTOR.
Auspiciado por TELEMATICA S.A. fabricante en Argentina de las computadoras
personates TALENT MSX
Para participar en este certamen deben senalar cual es la information correcta que presenta cada
item. Junto con las respuestas deben remitir los datos en el correspondiente cupon. Los premios
se entregaran en la administration de la editorial. Los que no puedan concurrir pueden solicitar
el envio pagando el franqueo contrareembolso. Los premios podran ser reclamados dentro de los
120 dias despues de haber sido anunciados.
Ganador del MSX-TEST No.ll
Carlos J. Caccia
Respuestas correctas
l)a. Memoria RAM de video. 2)b. Tipografia para sacar archivos por impresora.
3)b De pantalla. 4) b.Un trazador de graficos. 5)b. Video Display Processor
MSX-TEST No 15-CIERRE 1 DE MAYO DE 1989
lUQu® notacion musical se
utiliza en la MSX?
a. alfabetica
b. alfanumerica
c. notacion de Weisner
2);,Cuantos utilitarios nuevos
incorpora el MSX-DOSTOOLS?
a. 20
b. 28
c. 36
3) ^Cual es el archivo que, en caso
de ser hallado, carga y ejecuta
automaticamente un programa?
a. AUTOEXEC.BAS
b. COMMAND.COM
c. MSXDOS.SYS
4) ^Que tipo de joystick es el
WARP I?
Nombre y apellido:-
Direccion: -
Documento:
-Edad:-
-Maquina:
Que es lo que mas le gusta de la revista: -
Que le agregaria:
a. mecdnico
b. electronico
c. electromccanico
5)iCuantos canales de sonido
se pueden utilizar en la MSX?
a. tres
b. cinco
c. dieciseis
Que es lo que no me gusta:-
RUTS N AS
( SACANDO CONEJOS DE LAS k
M 'S' Xl
Como si fuera la galera de un mago, nuestra computadora brinda la
oportunidad de sacar un truco tras otro. Desde provocar y anular sonidos hasta
escribir enltalic” pasando por la decoracion de las caratulas de pantallas.
o
nas una coleccidn de trucos, rutinas y
pequenos programas para ias compu-
tadoras MSX. Los mismos nospermi-
tiran conocer muchas posibilidades
que nos brinda nuestra computadora.
1) PantalIa por paginas
Con este truco podremos ver la panta-
11a en el modo texto, pagina por pagi-
na, exceptuando las paginas 2 y 3.
10 INPUT “ENTRA UN VALOR
DEL 0 AL 15, PERO QUE SEA
DISTINTO A 2 y 3”;X
20 B ASE(0)=X* 1024 : VDP(2)=X :
POKE&HF23,X*4
2) Rapidez en alta resolucion
Veamos las diferencias entre el tiem-
po de ejecucion de estos dos listados.
La clave de la rapidez esta en la
instruccion VPOKE
LIST ADO 1
10 SCREEN 2
20 FOR J=1 TO 192
30 FOR 1=1 TO 255 STEP 8
40 LINE(U)-STEP(8,0),X
50 X=X+1 : IF X>15 THEN X= 1
60 NEXT I,J
70 X $=INPUT$(1)
LIST ADO 2
10 SCREEN 2
20 COLOR 1,1
30 X=0
40 FOR 1=8192 TO 14335 STEP 8
50 FOR J=0 TO 7
60 VPOKE I+J.X+J
70 NEXT J
80 X=X+1
90 IF X+248 THEN X=0
100 NEXT I
110 X$=INPUT4$(1)
3) Visualizacion de las teclas de fun-
cion
Para ver las sentencias definidas para
las teclas de funcion debemos colocar
POKE&HF3DE,l. Para que desapa-
rezcan, el truco es POKE&HF3DE,0.
La aparicion y desaparicion se produ-
ce reci6n despues de colocar CLS o
presionar la tecla SHIFT.
4) Cuestion de ruidos
Con POKE&HF3DB, 1 escuchare-
Pag. 24
RUT I N AS
mos un eco luego de apretar cada
tecla. Con POKE&HF3DB, 0 ese rui-
do desaparece.
5) Secuencias de escape
Estas funciones estan disponibles
desdc el PRINT del BASIC, la rutina
de BIOS CHPUT, CONOUT del
BIOS del MSX-DOS llamado direc-
tamente y CONSOLE OUTPUT de la
funcion del MSX-DOS.
[ESC] A Cursor arriba
[ESC] B Cursor abajo
[ESC] C Cursor derecha
[ESC] D Cursor izquierda
[ESC] H Cursor a home
[ESC]Y [Fila+20H] [Columna+20H]
funcion locate
[ESC] E Borrar pantalla
[ESC] K Borrar hasta el fin de la linea
[ESC] J Borrar hasta el fin de la pan-
talla
[ESC] U Borrar toda la linea
[ESC] L Insertar una linea
[ESC] M Eliminar una linea
[ESC]x4 Coloca el cursor relleno
[ESC]x5 Apaga cursor
[ESC]y4 Coloca el cursor pequcno
[ESC]y5 Prende cursor
6) Locate
Si queremos utilizar el MB ASIC y su
respectivo compilador, nos encontra-
mos que no tenemos la sentencia
LOCATE que permite ubicar el- cur-
sor en la pantalla. Para poder simular
esta sentencia podcmos definir la
siguiente funcion:
10DEFFNCUR$(X,Y)=CHR$(27)
+”Y”+CHRS(X+32)+CHRS(Y +32)
y luego utilizarla con la sentencia
PRINT:
18PRINT FNCURS(10,10);”ESTO
ES UN TEST”
7) Input diferente
Esta rutina anula la aparicion del sig-
no ? en el INPUT. Para recuperar el
INPUT normal debemos colocar
POKE &HFDE0,&HC9
10 POKE &HFDE1 ,&HC3
20 POKE&HFDE2,&HD2
30 POKE &HFDE3,&H23
40 POKE &HFDE0,&FIF1
8) Codigo de caracteres
Con esta rutina podemos ver el codigo
decimal de cada tecla que pulsemos.
10 CLS:KEY OFF: SCREEN 0:CO-
LOR 11,1,1
20 A$=INKEY$:IF A$=”” THEN20
30 FOR 1=0 TO 255
40 IF A$=CHRS(I) THEN PRINT
“El CODIGO DECIMAL DE
“;CHRS(I): PRINT “ES: “;I
50 NEXT
60 GOTO 20
9) Interrupciones
S i nos encontramos con algun progra-
ma largo, para ahorrar tiempo corte-
mos las interrupciones a fin de leer el
teclado y, en consecuencia, la actuali-
zation de la variable TIME.
Estas funciones, si bien son realizadas
con rapidez, tambien devoran nuestro
tiempo. Con VDP(1)=208 se desacti-
van las lecturas del teclado. AquI el
sistema no recibe ninguna instruction
desde el teclado, por lo tanto las tec las
STOP o CONTROL/STOP no provo-
caran ningun efecto.
Para volver a activar las lecturas del
teclado, hace falta introducir
VDP(1)=204
10) Grafico I:
Este grafico nos puede resultar util
para decorar caratuias de pantallas.
■1 0AS=”s3m7800c4r8o3q 1 8al8b 1 8c
4r8o3q 1 8a 1 8b 1 8c4r2r8o5c8c4 ,b8d4.c
8q2f4"
20 PLAY AS
30 GOTO 30
11) Grafic<> II:
Para mejorar la presentation de los
programas podcmos utilizar el si-
guiente listado.
10 SCREEN2: DEFINT A-Z: CO
LOR 1,15,11
20 FOR A=1 TO 255 STEP 19: FOR
B=1 TO 191 STEP 11
30 FOR C=A/2 TO B STEP 7: FOR
D=B*2 TO 1 STEP 38
40 LINE STEP (A,C)-(D,B),13
50 LINE STEP (D,C)-(B,A),12
60 LINE STEP (C,A)-(B,D),1 1
70 LINE STEP (A,C)-(B,D),10
80 NEXT
90 NEXT
100 NEXT
110 NEXT
120 ZS=INPUTS(1)
12) Paleta
BASE es el nombre de una instruc-
cion poco usada. Se puede utilizar,
entreotras funciones, paracrear nues-
tra propia configuration de la memo-
ria RAM de visualization. Por ejem-
plo, la paleta de colores comienza en
la direction 8 1 92 de la VRAM y tiene
una longitud de 32 caracteres. Este
programita nos permitira ver la panta-
lla con varios caracteres de diferentes
colores.
10 COLOR 1,15
20 SCREEN 1
30 FOR N=8192 TO 8192*32
40 VPOKE N,INT(RND(1)*255)
50 NEXT N
13) Caracteres
Esta rutina nos permite modificar la
definicion de los caracteres. De esta
manera, podremos tener siempre car-
gados en nuestra computadora los
mas diversos disenos de letras y
numeros.
10 SCREEN0
20 PRINT “Esto es una prueba”
30 FOR T=1 TO 1300: NEXT
40 FOR F=0 TO 7
50 READN
60 VPOKE(BASE(2)+(97*8+F)),N
70 NEXT
80 PRINT “Se cambio la definicion
del caracter -a-”
90 DATA 0,255,255,0,0,31,31,0
14) 16K mas
Esta rutina le da uso a 16K de memo-
ria de la pagina 1 del slot 1 , que no se
emplea y permanece oculta cuando se
trabaja con BASIC.
Una vez ejecutada, quedan definidas
dos teclas: F3 y F8.
Una funcion nos permite grabar el
contenido de la memoria de video en
modo texto; la otra lee dicho conteni-
do y lo presenta en pantalla. A1 tipear
F8 el cursor espera que ingresemos el
Patr. 25
numero de pantalla que se ha de escri-
bir o leer. En total se pueden almace-
nar 16 pantallas (de 0 a 15).
La rutina se puede usar con el drive
conectado, ya que no produce ningu-
na interferencia. Ademas, permite
trabajar con dos o mas programas en
BASIC simultaneamente, sin necesi-
dad de acceder al disco o casete.
10 WIDTH 38
20 DEF USR8=51770!
30 DEF USR9=51810!
40 KEY3,”LEC=USR9(0)”+CHR$
(29)+CHR$(29)
50 KEY 8,”ESC=USR8(0)”+CHR$
(29)+CHR$(29)
110 FOR R=51750! TO 51839!
120 READ D: POKE R,D: NEXT R
130 NEW
140 DATA64 ,68,72,76,80,84 ,88,92,
96.100.104.108.112.116.120.124.0. 0.0.0
150 DAT A 1 , 1 2,0,33 ,0,0,62,32,205,
86.0. 33.38.202.58.248.247.133.111.30.0
,86,33,0,0,1,192
160 DATA3, 62, 84 ,21 1,168,205,89,
0,62,80,2 11,1 68,201 ,33,38,202,58,248,
247.133.1 1 1.126.103.46.0. 17.0.0.1.192,
3.62.84.211.168.205.92.0. 62.80.211,
168,201
15) MuItiplicacion
Con este program itapodremos ver las
tablas de multiplicacion
10CLS
20 FOR K=10 TO 20
30 CLS
40 FOR 1=1 TO 20
50 J=K*I
60 PRINT K;” x “;I;” = “;J
70 FOR D=1 TO 100
80 NEXT D
90 NEXT I
100 FOR A=1 TO 400
110 NEXT A
120 NEXT K
16) Sprite sin sprite
Con el siguiente listado mostramos
otro camino para que los programa-
dores puedan manejar sprites. En la
linea 50, el valor 195 define la forma
del caracter que se va a mover luego
como un sprite. Este valor puede ser
modificado para cambiar su forma.
En tanto la variable F define cual es el
byte que sera definido. Para definir
todo un caracter es necesario utilizar 8
bytes, de ahf el bucle “FOR F=A TO
A+7”
El sprite definido esta en las 8 prime-
ras posiciones de la tabla de diseno de
sprites (BASE 9).
Para correr el sprite modifiquemos las
dos primeras posiciones de la tabla de
atributos de sprites (BASE 8). Con la
primera posicion se consigue variar la
coordenada “X” del sprite, mientras
que la segunda varia la coordenada
«Y”
10 SCREEN 1
20 KEY OFF
30 A=BASE(9)
40 FOR F=A TO A+7
50 VPOKE F,195
60 NEXT
70 S=BASE(8)
80 FOR 1=0 TO 200
90 VPOKE S,I
100 VPOKE S+l, I
110 NEXT
120 GOTO 80
17)Redefiniendo teclas
Al comenzar a manejar nuestra MSX,
las teclas de funcion se encuentran
definidas con funciones como RUN,
COLOR, LIST, etcetera . Con este
listadito redefiniremos las funciones
que les asignamos a dichas teclas. Las
nuevas funciones seran:
Fl=movera el curso siguiente.
F3=movera el cursor al ultimo carac-
ter de la linea actual.
F4=borra la linea actual.
F5=borra el caracter siguiente al cur-
sor.
F6=genera un “bip”.
F7=borra el caracter anterior al cur-
sor.
F8=mueve el cursor a la proxima
tabulae ion horizontal, borrando por
donde paso.
F9=borra la pantalla y el cursor se
coloca en el angulo superior izquier-
do.
F10=borra el caracter donde esta el
cursor.
Estas definiciones son muy utiles
cuando nos encontramos editando
programas.
10 CLS
20 FOR F=1 TO 10
30 READ A
40 KEY F,CHR$(A)
50 NEXT
60 DATA 2,6,14,21,5,7,8,9,12,127
18) Caracteres invertidos
Este programa convierte todos los
carcteres en efecto invertido. Funcio-
na unicamente mientras no pasemos
del modo de pantalla 1 a cualquier
otro:
10 SCREEN 1
20 CLS
30 FOR F=0 TO 2048
40 IF F=256 THEN F=264
50 D$ =”00000000"
60AS=RIGHTS(DS+BI N $(VPEEK(F»,
8 )
70 FOR B=1 10'NEXT B
120G$=V$(1)+V$(2)+V$(3)+VS(4)+
V $(5)+ V$(6)+ V S(7)+ V$(8)
130 VPOKE F,VAL(“ &b”+GS)
140 NEXT F
19) RotuIos
Con esta pequena rutina podemos
darnos cuenta de la utilidad de la
sentencia MIDS . Hace que un rotulo
se desplace de derecha a izquiertruc-
ciones de los programas.
10 CLS
20 KEY OFF
30 SCREEN 0: WIDTH 40
40 AS =”ESTO LO PUEDES IN-
CORPOR AR A TUS PROGRAMAS
- LOAD MSX"
60 LOCATE 0,10
70 PRINT MID$(A$,B,40)
80 FOR F=1 TO 30: NEXT
90 B=B+1
100 IF B=43 THEN B=1
110 GOTO 60
20) Efecto
Vemos con este listado un bonito
efecto de pantalla, con lineas de dife-
rentes colores. Los puntos aleatorios
de las rayas se definen en las lineas
40,50,60 y 70
10 SCREEN 2
20 A=1
30 FOR T=1 TO 50000!
40 X=INT(RND(1)*255)
50 Z=INT(RND(1)*255)
60 C=INT(RND(1)* 190)
70 S=INT(RND(1)* 190)
80 LINE (X,C)-(Z,S),A
90 A=A+1
100 IF A=16 THEN A=1
110 NEXT T
21) Enfilar y encolumnar
Esta rutina permite numerar en los
margenes izquierdo e inferior de la
pantalla del modo texto 0 las filas y
columnas en que puede dividirse la
pantalla normalmcnte
10 SCREEN 0: WIDTH 37
20 CLS : KEY ON
30 FOR F=0 TO 23
40 VPOKEF*40,VAL(MIDS(STR$
(F),LEN(STR$(F)),l))+48
50 NEXT F
60 FOR C=0 TO 39
70VPOKE920+C,VAL(MID$(STRS
(C) ,LEN(STRS(C)), 1 ))+48
80 NEXT C
22) Proteccion:
Para proteger los programas de los
piratas tengamos en cuenta los si-
guientes POKES:
POKE 65297,195
POKE 65298,0
POKE 65299,0
23) Nombres I
Con este listado podremos averiguar
el nombre del ultimo programa que
hemos cargado
10 FOR 1=63600! TO 63607!
20 N=PEEK(I)
30 PRINT CHRS(N)
40 NEXT I .
24) Nombres II:
Si queremos saber el nombre del ulti-
mo programa que hemos grabado,
probemos con el siguiente listado.
10 FOR 1=63590! TO 63596!
20 N=PEEK 0)
30 PRINT CHRS (N)
40 NEXT 1
25) Ventana
Es sabido que la pantalla tienc 23
Imeas.' Pero esta cantidad podemos
cambiarla facilmente con la senten-
cia: POKE 62385,N donde N es la
cantidad de lfneas que tendra de largo
la pantalla.
26) CLS
Para borrar la pantalla (CLS) de una
manera diferente podemos ingresar la
siguiente sentencia.
DEFUSR=&HC3
A=USR (0)
27) Efecto luz
Con esta rutina podemos cambiar el
estado de la luz de la tecla CAPS.
OUT 170,103 apaga la luz y OUT
1 70,7 la enciende. Pero esto no cam-
bia el modo de escritura, solo el esta-
do del led indicador.
10 OUT 107,103
20 A=A+9: FOR 1=1 TO A: NEXT 1:
BEEP
30 OUT 170,7
40 E=E+20: FOR 1=1 TO E: NEXT I
28) OFF-ON
Para eliminar o escribir la ultima llnea
de la pantalla con las teclas de fun-
cion, el BASIC cuenta con las senten-
cias KEY OFF, KEY ON, respectiva-
mente.
Otra forma es con:
DEFUSR=&HCA : A=USR (0), que
elimina la llnea y
DEFUSR=&HCD : A=USR1(0) que
la vuelve a escribir.
29) FONT
Con esta rutina se puede cambiar la
definition de los caracteres.
Para recuperarla, ingresemos:
SCREEN 0
10 FOR N=BASE (2)+8*33 TO
(BASE(2)+8*64)+255
20 PRINT “Revista K-64”
30 VPOKE N,248 : NEXT N
30) Bloqueo
Para provocar un bloqueo intencional
de la computadora utilicemos la si-
guiente instruccion:
POKE 64922, 195.
Para recuperar el control de la maqui-
na deberemos apagarla.
31) Italic
Esta rutina permite escribir en panta-
lla con tipografla “italic”, al tiempo
que mantiene la clasica tipografla de
la computadora.
Aseguremonos que la computadora
esta en modo minusculas.
Para escribir con letras “italic minus-
culas” se debe presionar simultanea-
mente GRAPH y la tecla deseada.
Para lograr letras “italic mayusculas”
se debe presionar simultaneamente
CODE y la letra deseada.
10 SCREEN 1
20 FOR F=0 TO 93
30 Q=8 : W=0 : E= 1 : READ M : FOR
C=0 TO 7: VPOKE
M*8+C,VPEEK((F+33)*8+C) /0
40 IF W=1 THEN Q+Q/2
50 SWAP WJE
60 NEXT
70 NEXT
80 END
90 DATA159, 185,191,155,152,225,
5,135,235,231,233,243,23,242,29,9,172,
171,1 86,239, 1 89,244^5 1 ,236,7, 1 83 ,6,
134,241,166,167
100DATA217.132, 151,141,139,140,
148, 129,177,161,145, 179, 181230, 164, 162,
163,131,147,137,150,iai49,136,138,160,133,
130, 13224,238,187,196,17,188, 19920520,
21,19,220,198,221,200,11,27
110 DATA194,219,204, 24,210,18,
1 92,26,207,28 ,25, 1 5,237 , 1 73 ,2 1 8,229
32) Buscadora
La sentencia
10 DEFUSR=&HDF : A=USR(0) :
MOTOR OFF
busca programas grabados en cinta.
33) Mayusculas I
Con estarutina los programas se inde-
pendizan del tipo de letras que ingrese
el usuario, pues ya sean mayusculas o
miniisculas, indistintamente, son
Pag. 28
contrOladas en forma automatica,
garantizando el ingreso en mayuscu-
las.
10 PRINT “Mensaje pidiendo ingre-
so por teclado”
20 LINE INPUT A$
30 FOR L=1 TOLEN (AS)
40LETCOD= ASC (MID$(A$,L,1))
50 IF COD>=97 AND COD<=122
THEN LET COD=COD-32
60LETAUXS=AUXS+CHRS(COD)
70 NEXT L
80 LET A$=AUXS
90 PRINT AS
100 REM RETURN
34) Mayusculas II
En aquellos casos en que se necesite
que tanto las entradas de datos por
teclado como la salida por pantalla
sea en mayusculas podemos emplear
el siguiente poke.
POKE 64683,255 fija las mayuscu-
las.
POKE 64683,0 retoma al modo nor-
mal.
35) Pantalla invisible I
DEFUS R=63 : U=US R(0) desactiva
la pantalla y no podemos ver lo que
estamos escribiendo, a pesar de que el
teclado sigue tomando nuestra infor-
macion. Con SCREEN 0 volvemos a
la normalidad.
36) Pantalla invisible II
DEFUSR=121: U=USR (0) tambien
apaga la pantalla, pero en este caso sf
escribimos “a degas”.
Con DEFUSR=120:U=USR(0) vol-
vemos a la normalidad sin que se
borre lo que habiamos escrito.
37) BEEP
Para lograr un efecto similar al del
comando BEEP tendremos que colo-
car: DEFUSR=192:U=USR(0)
38) Modos de pantalla
Con DEFUSR= 106:U=USR(0) pasa-
mos al modo de pantalla 1 .
Con DEFUSR=108:U=USR(0) vol-
vemos al modo de pantalla 0.
39) Nada se pierde
Supongamos que tenemos un progra-
ma en la memoria y luego lo borra-
mos, ya sea con el clasico NEW o con
la rutina de RESET (DEFUSR=0:
PRINT USR(0)).
Ahora supongamos que luego de“bo-
rrarlo” queremos recuperarlo. Lo
conseguiremos ingresando las si-
guientes sentencias en este orden:
POKE 32768,0
POKE 32769,255
POKE 32770,255
LIST
1 REM
SAVE“CAS:NAME”
40) Direcciones
En las direcciones 64586 y 64587 se
almacena el valor del comicnzo del
area del sistema. Esta se calcula con
PRINIPEEK(64586)+256*PEEK(64587).
En las direcciones 64584 y 64585 se
almacena el valor del comienzo de la
RAM que usa el BASIC. Se calcula
por el mismo procedimiento que la
anterior. En las direcciones 64670 y
6467 1 se guarda el valor de la variable
TIME. Se calcula de la misma forma.
SIMULTANEO CON EE.UU.
SUPLEMENTO BYTE EN K64
EXPLORADOR DE
CABEZALES
Autor: Patricio G. Exposito
Tipo: Utilitario
Computadora: MSX
n
esde el surgimiento de la nor-
ma MSX ya ha pasado bastante tiem-
po y cada dia son mas los usuarios de
estas computadoras que poseen una
unidad de discos. Cuando se encaran
trabajos de cierta seriedad hay dos
ventajas por las que conviene pagar la
diferencia entre la disquetera y la
unidad de casete: velocidad y seguri-
dad.
Sin embargo, no son pocos los usua-
rios que siguen usando su computa-
dora en forma “casera” y, para mu-
chos de ellos, no se justifica pagar el
precio de la disquetera.
Un problema que se les suele presen-
tar es que muchos utilitarios estan
hechos exclusivamente para ser usa-
dos con disquetera, o bien no pueden
seraprovechadosal cienporcientode
su capacidad si vienen en casete.
El utilitario que presentamos aqui
rompe la regia, ya que esta hecho para
los “sufridos” usuarios de casetes.
El programa basicamente puede ha-
cer cuatro cosas: explorar, dar infor-
mation de la unidad de cinta, leer un
archivo y grabar un archivo.
La exploracion, a su vez, se divide en
lectura y busqueda.
La information de la unidad de cinta
puede ser dada por pantalla o impre-
sora, a requerimiento del usuario.
Consta de listados de programas, in-
formacion del programa, busqueda
del mismo mas una option adicional
de borrar datos.
Este programa, por su extension y
utilidad, seguramente sera muy bien-
venido por la numerosa grey de
MSX.
K> KEY i ,"DEFUSR=0;A=USR<»
20 '
30 'EXPLORADOR DE CINTAS
40 '
50 CLEAR 1 000 , &HD9FF
60 ON STOP GOSUB 1400
70 SCREENO: WIDTH 40: PRINT" EXF
L.ORADOR DE CABECERAS PATOSOFT"
80 DIM TP* (4) , PR* < 100) , TP ( 100) , I
N < 100) , F I <100) , E J < 1 00 )
90 TP* < 1 ) * " BLO AD " s TP* < 2 ) = " LOAD " :
TP* < 3 ) = " CLOAD "
100 FOR T=$<HDAOO TO &HDA44: READ
A* : POKE T , VAL < " &H " + A* ) : S=S+VAL < "
&H"+A*) : NEXT : DEFUSR-&HDAOO
110 IF S— 8966 THEN PRINT "ERROR
EN DAT AS" : STOP
120 KEY OFF
130 'MENU
140 GOSUB 970
150 PRINT "MENU DE OPCIONES"
155 PRINT "* ->
160 X=30: Y=10: GOSUB 1060
170 LOCATE
AR"
5,10: PRINT "
1
EXPLOR
180 LOCATE
AC ION U. C.
5,12: PRINT "
2
INFORM
190 LOCATE
RCHIVO"
5, 14: PRINT "
3
LEER A
200 LOCATE
ARCHIVO"
5,16: PR I NT "
4
SALVAR
210 LOCATE 5, 18: PRINT
220 N0=5: GOSUB 1210
5
FIN"
230 ON OP GOSUB 270,560,1440,147
0
240 IF OP-5 THEN 1?0
250 KEY ON: CLS: END
260 '
270 'EXF'LORA
280 '
290 GOSUB 970: PRINT "EXPLORACION
"-.LOCATE ,8
300 X=30:Y=6: GOSUB 1060
310 LOCATE 6, 10: PRINT "1 LEE"
320 LOCATE 6,12:PRINT "2 BUSCA"
330 LOCATE 6, 14: PRINT "3 SAL I DA"
340 N0=3: GOSUB 1210
350' IF 0P=3 THEN OP-O: RETURN
360 N*="":IF OF -2 THEN GOSUB 131
0
370 CLS: PRINT"PLAY" : PRINT " "
380 IF NP=100 THEN BEEP: PR I NT "M
EMORIA LLENA": MOTOR OFF: GOSUB 12
70: RETURN
390 A*=USR ( STR I NG* < 20 , 0 ) >
400 IF ASC(A*>=0 THEN 390
410 T=ASC(A*>
420 IF T=S<HD THEN MOTOR OFF : RETU
RN
430 NP=NP4 1 : TP < NP ) =0
440 IF T=&HDO THEN TP (NP) -1
450 IF T-fcHEA THEN TP(NP)=2
460 IF T s =8<HD3 THEN TP (NP) =3
470 PR* <NP)=MID^<A^,2,6>
480 I N < NP ) = A3C (MI D* .< A* ,8,1) ) 4ASC
(MID* (A* ,9,1) ) *256
490 FI ( NP ) = ASC < M I D* < A* ,10,1) ) +AS
C < M I D* < A* .11,1)) f-256 „
Pag. 30
500 EJ ( NP > =ASC ( M I D$ ( A* , 1 2 , 1 ) ) +AS
T T s PR I NT " > "
1320
GOSUB 970 SPRINT "BUSCA PR."
C <MID* <A*, 13, 1 ) ) *256
890 LOCATE 2, 10: PRINT "CARGA: "TP
1330
X=17:Y=2: GOSUB 1060
510 PRINT "FOUND: "PR* <NP) " "T
* (TP <P) )
1 340
LOCATE 12, 10 s PRINT "NOMBRE:
P* ( TP < NP ) )
900 IF TP (P) —1 GOTO 950
":N*=" "
520 IF NP* 1 00 GOTO 380
910 LOCATE 2 , 1 2 : F‘R I NT "DIR: I
1350
FOR T=1 TO 6 : LOCATE 19+T,10
530 IF N*OPR*<NP> GOTO 390
&H"HEX$<IN<P> > " “ I N < P )
1360
A*== I NPUT* < 1 )
540 PRINT "HALLADO": MOTOR OFF: GO
920 LOCATE 6 : PRINT "F &H"HEX
1370
IF ASC <A*> <32 THEN 1360
SUB 1270
t(FI(P))" "FI (P)
1380
PRINT A*s N*=N*+A*: NEXT
550 RETURN
930 LOCATE 6 : PRINT "E &H"HEX
1390
RETURN
560 ' INFORMACIGN ULTIMA CINTA
* < E J < P > > " "EJ <P)
1400
RETURN 150
570 GOSUB 970: PRINT "INFORMACIGN
940 PR I NT: PR I NT" M. 0.:"FIX<<FI
1410
DAT A 1 3 , 1 A , 6F , 13, 1 A , 67 , E5 , L
U.C. "
<P> -IN <P) >71024) "Kb"
D , El ,
0 , CD , E*4 , 0 , 4F" ,6,9, C5 , CD , E4 , 0
580 X=39:Y= 10: GOSUB 1060
950 GOSUB 1270
,C1 ,B9,28,2,E1
590 LOCATE 1,10: PRINT " 1 LI ST A
960 RETURN
1420
DATA C9 , 1 0 , F4 , FE , DO , 28 , C , FE
PROGRAM AS"
970 ' DIBUJA CABECERA
, EA , 28 , S , FE , D , 28 , 4 , FE , D3 , 20 , EC , E
600 LOCATE 1,1 2: PR I NT "2 INFORM
980 CLS
1,77,
23, CD, 37
AC I ON PRQGRAMA"
990 PRINT STRING* <39, 42)
1430
DATA DA , E5 , CD ,E1 , 0 , E 1 , 6 , 6 , E
610 LOCATE 1,14: PRINT " 3 BUSCA
1000 FOR T=0 TO 2
5 , C5 ,
, CD ,E4 ,0 ,C1 ,E1 ,77,23, 10, F5,C
PROGRAMA"
1010 PRINT CHR* < 42 > SPACE* < 37 > CHR
9
620 LOCATE 1,1 6: PR I NT " 4 BORRAR
* < 42 >
1440
DATOS"
1020 NEXT T
1441
OPEN" c as : ar ch " FOR I NPUT AS# 1
630 LOCATE 1,18:PRINT " 5 SAL I DA
1030 PRINT STRING* <39,42)
1442
INPUT# 1 , NP
••
1040 LOCATE 12,2
1443
F0RI=1 TO NP
640 N0=5: GOSUB 1210
1050 RETURN
1444
INPUT# 1 , PR* < I )
650 ON OP GOSUB 680,820,1110,118
1060 'DIBUJA CU ADR ADO
1445
INPUT# 1 , TP* < ! P < I ) )
0
1070 LOCATE 0,3: PRINT SPACE* <<38
1446
I NPUT# 1 , IN < I )
660 IF OP-5 GOTO 560
-X) /2) STRING* <X , 45)
1447
INPIJT#1 , FI < I )
670 0P=0: RETURN
1080 FOR T=0 TO Y: PR I NT SPACE* < <
1448
I NPUT# 1 ,EJ < I )
680 CLS: IF NP=0 THEN BEEP: PRINT
38- X ) /2) CHR* < 124) SPACE* < X-2) CHR*
1449
NEXT
"NO HAY PROGRAMAS EN MEMORI A" : GO
<124): NEXT T
1450
CLOSE
TO 800
1090 PRINT SPACE* < <38-X ) /2) STRIN
1460
RETURN
690 PRINT" (I)mpresora o <P)antal
G* < X , 45)
1470
*
la?"
1100 RETURN
1471
OPEN " c as s ar ch " FOROUTPLJT AS# 1
700 J*= INKEY*
1110 GOSUB 1310
1472
PR I NT# 1 , NP
710 IFJ*<>"I"ANDJ*<>"i "ANDJ*<>"p
1120 LOCATE 0, 15: PRINT "NO HALLA
1473
FOR 1=1 TO NP
" ANDJ*< >"P"THEN700
DO": LOCATE 0,15
1474
PR I NT # 1 , PR* < I >
720 IFJ*="i "ORJ*=" I "THENG0SUB150
1130 FOR T=1 TO NP
1475
PR I NT# 1 , TP* (TP < I ) >
0
1140 IF PR* <T) =N* THEN PRINT "PR
1476
PR I NT# 1 , IN<I>
730 CLS
OG. NO. : "T
1477
PRINT#1 ,FI < I )
739 PRINT "PROG. NOMBRE CARGA":
1150 NEXT T: PRINT
1478
PR I NT# 1 ,EJ < I )
PRINT
1160 GOSUB 1270
1479
NEXT
740 FOR T=1 TO NP
1170 RETURN
1480
CLOSE
760 LOCATED, T+2: PR I NTT
1180 LOCATE 17, 16: PRINT " CSEGURO
1490
RETURN
770 L0CATE6 , T +2 : PR I NTPR* ( T )
91 *.
5
1499
' impresora
780 LOCATE 14 , T+2: PRINTTP* <TP <T) )
1190 A*= INPUT* < 1 ) : IF A*="S" OR A
1500
FOR T=1 TO NP
790 NEXt T
*="s" THEN NP=0
1510
LF'R I NT "PROG. NOMBRE CARGA
800 GOSUB 1270
1200 RETURN
D. INC. D.FIN. D.EJC. MEM. REQ. " s
810 RETURN
1210 'SELECCION DE OPCION
LPR I NT
820 LOCATE 26, 12: PRINT "NO.: _"
1220 LOCATE 8 ,22: PRINT" <SELECCIO
1520
LOCATED, T+ 2: LPRINTT
830 LOCATE 30 , 12: P=VAL ( INPUTS < 1 )
NE OPCION < »"
1530
L0CATE7 , T+2 : L.PR I NTPR* < T )
) SPRINT USING"#" ; P
1230 LOCATE 28,22
1540
LOCATE 1 5 , T+2 : LPR I NTTP* < TP < T
840 LOCATE 31 , 12: P=P*10+VAL (INPU
1240 QP= V AL < I NPUT * < 1 ) ) : PR I NT US I
) )
T* < 1 ) ) s PRINT USING"#" 5 P MOD 10
NG"#" ; OP
1550
L.0CATE2 1 , T+2 : LPR 1 NT I N < T )
850 CLS: IF P=0 OR P>NP THEN BEEP
1250 IF 0P«0 OR OP >N0 THEN 1230
1560
L0CATE28 , T+2 : LPR I NTF I < T >
SPRINT " PROG . I NE X I STENTE " s GOSUB
1260 RETURN
1570
LOCATE 35 , T+2 : LPR I NTEJ < T )
1270: RETURN
1270 'ESPERA TECLA
1580
L0CATE42 , T+2 : LPR I NTF I. X < < F I <
860 GOSUB 970: PRINT "PROG. "P
1280 LOCATE 12,22: PRINT "PULSE U
T)-IN<T>> 71024) "kb."
870 LOCATE 2,8: PRINT "TITULO: "P
NA TECLA"
1590
NEXT T
R *<P>" C";
880 FOR T=1 TO 6 : PRINT HEX*(ASC<
MID*<PR*<P) , T , 1 ) ) ) SPACED < 1 ) ; s NEX
1290 IF INKEY*=" " THEN 1290
1300 RETURN
1310 'ESPERA TITULO
1600
RETURN
Lo que vendra: opinan los visionarios.
Byte elige los mejores productos para PC de 1988.
Bandidos de datos: virus, robo y destruccion accidental son todos enemigos
peligrosos cuando Began a los datos de una red.
HAUNTED HOUSE
Estamos en una casa embrujada y
debemos hallar la salida. Para ello
tendremos que sortear toda clase de
personajes dignos de una galena del
terror: cerebros, esqueletos, fantas-
mas, pisos que se derrumban, goteras
con dcido, etcetera.
Nuevamente,Eurosoft, haciendo gala
de un amplio conocimiento de las
capacidades graficas y de sonido de la
norma, obtiene unos resultados muy
interesantes. Por ejemplo, el estado
de nuestro personaje se indica con un
esqueleto cuyo corazon (muy bien lo-
grado) late y , a medida que nos hieren,
va cambiando el color y la velocidad
de los latidos. Si nos matan, la boca de
la calavera se abre (presumiblemente
dice “jAy!”).
Aquellos entusiastas de los juegos de
aventuras en laberintos, como “Ma-
nic Miner “ o “Misterio en el Nilo”
estaran de parabienes con este, ya que
para resolver cada pantalla se debe
demostrar ingenio y velocidad.
En algunos casos un salto bastara para
lograr “zafar”, pero en otros debemos
coordinar nuestro movimiento con el
del monstruo de tumo (cuyo simple
contacto es mortal).
Los controles son sencillos: con los
cursores movemos nuestro personaje
y vamos recogiendo Haves, fuentes de
poder, cruces (para repeler fantas-
mas), rosarios y demas implementos
que nos permitiran luchar contra las
fuerzas del mal que controlan la casa.
Tiene todos los ingredientes que
hardn las delicias de los “aventurama-
niacos”. (Distribuyen: Red Point /
Real Time)
BLOW UP
El amigo Joe Kowalski debe cumplir
una mision peligrosa: recorrer las
galenas subterraneas para solucionar
un problema en el tendido del gas de
la zona.
Para ello debera excavar sus propios
caminos, enfrentarse a enemigos y
seguir avanzando hasta llegar al des-
tino.
Aquellos memoriosos de la norma
veran que “Blow Up” es una version
muy sofisticada del conocido “Boul-
der Dash”, con sus galenas, rocas que
se deslizan y pueden aplastamos,
algunas zonas con gas “lentificante”,
que nos hacen avanzar a paso tortuga,
etcetera.
Es un juego muy interesante y que
realmente atrapa, pues lograr veneer
los obstaculos no es nada facil.
La calidad grafica y los efectos de
sonido son de primer nivel y estan
acordes con el resto de los juegos
pertenecientes a la lfnea de Eurosoft.
(Distribuye: Real Time)
TETRIS
Microsoft pone a nuestro alcance este
programa largamente esperado por
los amantes de los juegos de ingenio.
A nuestro pais llego primero como un
programa de PC y se genero inmedia-
tamente el clan de los “tetrismania-
cos”.
A simple vista, el juego no promete
mucho: piezas geometricas formadas
al azar con 4 cuadrados llamados te-
trominos (de alii el nombre del pro-
grama) caen en cualquier position.
Nosotros debemos ubicar estas piezas
en un contenedor a medida que bajan.
Si logramos completar una linea de
cuadrados, el conjunto desciende una
linea y nos libera espacio en el conte-
nedor. Gana quien mantiene mas
tiempoenfuncionamiento elsistema.
Las piezas se manejan rotandolas y
movicndolas horizontalmente. El
puntaje se otorga en funcion de tres
factores: el nivel corriente, la veloci-
dad para acomodar las piezas y si
espiamos la pieza siguiente.
Seeligeel nivel al comenzar el juego.
Luego, el nivel aumenta cada vez que
eliminamos 10 filas; pero si, por
ejemplo, se comenzo en el nivel 3, se
permanecera en ese nivel hasta que se
eliminen 30 filas.
Se puede mejorar el puntaje dejando
caer instantaneamente las piezas tan
pronto como se las tenga alineadas.
Este juego fue desarrollado en la
Union Sovietica por Viktor Gerasi-
mov y Andrei Pajitnov. La primera
version para PC estaba escrita en
Turbo Pascal 4.0. Fue traducida al
ingles (lastima, hubiera sido lindo
verlo escrito en ruso), por David
Howorth.
Dicha version es de dominio publico
y no puede ser vendida comercial-
mente. Solo puede incluirse en BBS ’s
con un archivo de explicaciones.
Las distintas opciones disponibles
son:
D - Escribe en la agenda diaria (el
texto del taco)
T - Agenda telefonica (muestra agru-
pado por letra)
P - Seleccionar el mes que se mostrara
(con calcndario perpetuo)
G - Genera una agenda anual
El archivo de explicaciones rezaba el
siguiente mensaje:
Si usted encuentra este juego intere-
sante y lo utiliza, rogamos enviar 20
rublos a:
Viktor Gerasimov
Gorki Av. 212 F 4
Moscow
Soviet Union
^Alguien sabe a cuantos australes
equivale un rublo?
Rubios aparte, la version de MSX es
de primer nivel. Tiene un buen acom-
panamiento musical, los colores de
las piezas estan bien definidos y se
nos muestra la sumatoria de las piezas
colocadas, el estado, el nivel del juga-
dor y cuantas filas completamos.
Los comandos son algo extranos,
tan to para juegos MSX en general (no
se usan los cursores) y como para la
version PC (las teclas son diferentes a
dicha version) .
Como conclusion decimos que esta
version no defraudara a los ya inicia-
dos. A los principiantes les sugeri-
mos jugar un par de minutos. Si a las
tres horas de juego se percatan de que
siguen jugando, no digan que no les
advertimos... (Distribuye: Real
Time)
PORTFOLIO- AGENDA
PERSONAL
Basandose en los utilitarios para
M S X 2
tales
como el
Philips
Home
Office o
el Philips
Ease,
surge
esta version de un paquete de agenda
personal, telefonica y calculadora
para MSX1.
Lo que se nos prcsenta en pantalla es
la imagen del popular “taco” de ofici-
na, en donde generalmente se puede
ver el calendario, la fecha de hoy y un
espacio en donde se hacen anotacio-
nes y se apuntan las citas. El funcio-
namicnto de este programa es muy si-
milar al taco, con el agregado de la
agenda telefonica, calendario perpe-
tuo y calculadora.
Los graficos del
programa son
muy ilustrativos,
ya que cada op-
cion esta simboli-
zada con un fco-
no, y se van pre-
scnlando los dis-
tintos mensajes
con “ventanas”
escritas en 64 co-
lumnas (modo
grafico, letra pe-
quefia, como el
Tasword).
C - Option calculadora
E - Permite buscar un texto dentro del
taco.
El uso es bastante sencillo, aunque
algunas traducciones no estan muy de
acuerdo con la Real Academia Es-
panola (donde dice “Tecle una tecla”
dcbe dccir “Pulse . ..”) En resumen,
un utilitario interesante y practico
para el hogar o la oficina modema.
(Distribuye: Real Time)
SOFT
— LOS ESPECIALISTAS —
MAS DE 10.000 TITULOS EN DISCO V CASSETTE
PARA MSX1-MSX2-SPECTRUM-COMMODORE DESDE A 2
EXCLUSIVO:MSX2 EN CASSETTE TURBO /<x
TIEMPO DE CARGA PROM. 7MIN /cT
LAS NOVEDADES ANTES QUE NADIE
TODOS LOS UTILITARIOS PARA MASX1.2
SPECTRUM- COMMODORE
CASSETTE 1 2 JUEGOS MSX A 35
CASSETTE 1 2 JUEGOS SPECTRUM A 35
CASSETTE 20 JUEGOS COMMODORE A 35
DISKETTES 3 1/2 - 5 1/2 - 8' - TODAS LAS
MARCAS A LOS MEJORES PRECIOS
COMPRA - VENTA DE MAQUINAS
MEJORAMOS CUALQUIER OFERTA
AV. SANTA FE 31 17 Loc. 1 - Tel.: 825-0977
LUNESASABADO DE9A21HS.
Para comunicarse con nosotros
deben escribirnos a "Load MSX",
Mejico 625 - 3 g piso (1097)
Capital Federal.
LECTOR CON
PROBlEMAS
Les quiero hacer conocer
una inquietud personal
con el fin de que me pro-
pongan una solucion den-
tro de sus posibilidades.
Soy lector de MSX desde
junio de 1987 y poseo una
MSX2, con varios perife-
ricos.
Recientemente compre el
software de SUELDOS Y
JORNALES producido
por ISM (Informatica
San Martin S.A.) que vie-
ne en disquete y con un
cartucho Have.
A1 aprender el uso del
programa comprobe que
el mismo liquida e impri-
me los distintos items con
milesimas de austral, sin
poder cambiarse a cente-
simas o decimas, es decir,
esto no es modificable por
el usuario.
Ante este problema me
dirigi al comercio donde
adquiri el programa. Alii
me dijeron que las milesi-
mas no tienen importan-
cia. Yo pienso lo contra-
rio ya que una contabili-
dad que se registre con
centesimas de austral no
puede mezclarse una vez
al mes con cifras que lie-
van milesimas. Ademas,
en un futuro no muy leja-
no probablemente no se
van a utilizar mas las
centenas ni las decenas de
austral.
Tambien me dijeron que
esas son las desventaja
del “software enlatado” y
que ellos no pueden hacer
nada,luego me propusie-
ron que “yo” consultara a
“su” proveedor.
Al consultar al distribui-
dor me comunicaron que
ya no representaban mas
a ISM y que “perdieron el
rastro” de dicha empresa
porque se cambio de
domicilio. Sin embargo,
me prometieron intentar
conseguir el nuevo domi-
cilio y telefonearme.
Me pregunto si LOAD
MSX puede proponerme
algun tipo de solucion. No
creo que un soft que vale
110 dolares tenga un
tiempo de vida tan limita-
do y sin niguna garantia.
El problema que se plan-
tea debio ser previsto por
los disenadores ya que
nuestro pais se caracteri-
za por su elevada infla-
cion.
Lamento que mi primera
carta a la revista sea por
este motivo, pero prome-
to escribirles nuevamen-
te para dilucidar inquie-
tudes que tengo sobre
diversos temas informa-
ticos.
Damian R. Castano
San Miguel de Tucuman
LOAD MSX
Lamentablemente no te
podemos ayudar a resolver
el problema, ya que no
podemos “meter mano”
dentro del soft enlatado.
S in embargo publicamos tu
carta para advertir a nues-
tros lectores sobre los pro-
blemas que enfrentas y que
no les ocurra lo mismo.
PREGUNTABOOLEANA
Quisiera que me infor-
men sobre los siguientes
terminos y conceptos:
logica de Boole, algorit-
mo, network y CAD. Des-
de ya, muchas gracias por
sacarme de mi ignorancia
computacional.
Pablo Uberti
San Fernando
LOAD MSX
La logica de Boole o bina-
ria es el concepto primario
en el disefio de computado-
ras. Las reglas que rigen el
comportamiento de . las
compuertas de un circuito
fueron desarrolladas por el
matematico ingles George
Boole, a mediados del siglo
XIX.
Algoritmo es el metodo
para resolver un problema.
Es un conjunto de opera-
ciones que deben ejecutar-
se en un orden especifico.
Network o red es la trayec-
toria de las comunicacio-
nes entre terminales y
computadoras, o entre
computadoras. La red pue-
de ser una mezcla de distin-
tas formas de canales de
comunicaciones.
Finalmente, CAD son las
siglas de* Computer Aided
Design (Disefio asistido
por computadora). Los sis-
temas CAD se utilizan para
disefiar una infinidad de
productos industrials y de
consumo.
MSX2
Tengo una MSX2 y perdi
el manual de la computa-
dora. Quisiera me cornu-
nicaran donde puedo
conseguir uno nuevo. De
paso una pregunta:
£cdmo puedo acceder a
las herramientas que tie-
ne la MSX2?
Martin Cabanas
Tristan Suarez
LOAD MSX
El manual lo podes conse-
guir en cualquier Centro de
Asistencia al usuario.
En cuanto a las herramien-
tas de la MSX2 hay que
apretar, simultaneamente
las teclas CTRL y SHIFT
BRERO 1989
PARA TODOS
EL FUTURO
BYTE AWARDS
LO MEJOR PARA PC
PROTECCION
VIRUS, ROBO
Y ACCIDENTE
PC IBM COMPATIBLES - DREAN COMMODORE - MSX - SPECTRUM
Computadora ^
Personal TPC-310
Caracteristicas:
M icroprocesador Z80 A - 3,58 M H z.
128 KB de memoria principal.
1 28 KB de memoria de video.
48 KB de MSX-BASIC Extendido,
Version 2.0.
32 KB de compilador Turbo BASIC
Inciuye programa en ROM con
cuatro funciones de accesorios:
calculadora, reloj, calendario y
juegode quince.
Almacenamiento permanente de
parametros preferidos: modo de
pantalla, color de fondo, senates
auditivas, mensajes, etc., y
password para control reservado de
acceso.
Teclado profesional ergonomico de
73teclas.
Nuevos modos graficos incluyendo
texto de 80 columnas y resolucion
de 512 x 212 pixels multicolor.
Reloj con dos alarmas y calendario
permanente con bateria de backup.
Capacidad de sobreimpresion de
imagenes .y digitalizacion de video.
Grabacion de imagenes en diskette.
Soportede RAM-Disk.
Soporte de Light Pen.
Conector para perifericos de
digitalizacion de imagenes.
Salida a TV PAL-N y NTSC con
modulador incorporado.
Salidas para impresora paralela,
video compuesto y RGB analogico
incorporadas.
Totalmente compatible con
software, accesorios y perifericos
deMSXI.
Conozca Talent MSX 2 Tlirbo.
La ventaja de un equipo
profesional de super-tecnologia.
Y la simplicidad de una maquina
de pensar domestica.
Con abundante memoria. Un buen
lenguaje basic incorporado.
Amplias posibilidades de
conexion a perifericos.
Y mas. Por menos.
Porque el futuro esta cerca.
Tengalo ya.
Turbo